{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "executionInfo": {
     "elapsed": 4,
     "status": "ok",
     "timestamp": 1649954990831,
     "user": {
      "displayName": "Sam Lu",
      "userId": "15789059763790170725"
     },
     "user_tz": -480
    },
    "id": "FsUgv8sL-tZ4"
   },
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "from tqdm import tqdm  # tqdm是显示循环进度条的库\n",
    "\n",
    "'''\n",
    "悬崖环境包括了以下几个功能：\n",
    ". 初始化网格内容\n",
    ". step前进一步的，给出下一步的状态、奖励和是否终止的\n",
    ". reset重置环境的\n",
    "'''\n",
    "class CliffWalkingEnv:\n",
    "    def __init__(self, ncol, nrow):\n",
    "        self.nrow = nrow  ## 网格行\n",
    "        self.ncol = ncol  ## 网格列\n",
    "        self.x = 0  # 记录当前智能体位置的横坐标\n",
    "        self.y = self.nrow - 1  # 记录当前智能体位置的纵坐标\n",
    "\n",
    "    ## step 前进一步的，拿到下一个状态，对应的奖励\n",
    "    def step(self, action):  # 外部调用这个函数来改变当前位置\n",
    "        # 4种动作, change[0]:上, change[1]:下, change[2]:左, change[3]:右。坐标系原点(0,0)\n",
    "        # 定义在左上角\n",
    "        change = [[0, -1], [0, 1], [-1, 0], [1, 0]] ## 动作\n",
    "        self.x = min(self.ncol - 1, max(0, self.x + change[action][0])) ## 下一个状态x到了网格外部，就保持不动的\n",
    "        self.y = min(self.nrow - 1, max(0, self.y + change[action][1])) ## 下一个状态y到了网格外部，就保持不动的\n",
    "        next_state = self.y * self.ncol + self.x    ## 下一个状态的坐标\n",
    "        reward = -1         ## 默认的奖励都是 -1\n",
    "        done = False        ## 是否终止了的\n",
    "        if self.y == self.nrow - 1 and self.x > 0:  # 下一个位置在悬崖或者目标\n",
    "            done = True  ## 终止\n",
    "            if self.x != self.ncol - 1: ## 下一个目标是悬崖，奖励= -100\n",
    "                reward = -100\n",
    "        return next_state, reward, done   ## 依次返回了  下一个状态、奖励、是否终止的\n",
    "\n",
    "    ## 重置到起始点\n",
    "    def reset(self):  # 回归初始状态,坐标轴原点在左上角\n",
    "        self.x = 0\n",
    "        self.y = self.nrow - 1\n",
    "        return self.y * self.ncol + self.x     ## reset以后起始的坐标"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "executionInfo": {
     "elapsed": 428,
     "status": "ok",
     "timestamp": 1649954991256,
     "user": {
      "displayName": "Sam Lu",
      "userId": "15789059763790170725"
     },
     "user_tz": -480
    },
    "id": "BtsnlukF-tZ8"
   },
   "outputs": [],
   "source": [
    "'''\n",
    "Sarsa可以看作是一个智能体的，包括了以下几个功能的：\n",
    ". 使用ε-贪心策略来采取行动，也就是选择一个行动的\n",
    ". 输出，输出每个状态最优的动作\n",
    ". update，增量更新动作的价值函数\n",
    "'''\n",
    "class Sarsa:\n",
    "    \"\"\" Sarsa算法 \"\"\"\n",
    "    def __init__(self, ncol, nrow, epsilon, alpha, gamma, n_action=4):\n",
    "        self.Q_table = np.zeros([nrow * ncol, n_action])  # 初始化Q(s,a)表格\n",
    "        self.n_action = n_action  # 动作个数\n",
    "        self.alpha = alpha  # 学习率\n",
    "        self.gamma = gamma  # 折扣因子\n",
    "        self.epsilon = epsilon  # epsilon-贪婪策略中的参数\n",
    "\n",
    "    ## 获取当前采取的行动，采取了ε-贪婪策略\n",
    "    def take_action(self, state):  # 选取下一步的操作,具体实现为epsilon-贪婪\n",
    "        if np.random.random() < self.epsilon:           ##  随机选择一个动作\n",
    "            action = np.random.randint(self.n_action)\n",
    "        else:\n",
    "            action = np.argmax(self.Q_table[state])     ##  拿到动作价值最大的动作\n",
    "        return action\n",
    "\n",
    "    ## 拿到每个状态最优的动作，最优动作标记1，其他的动作标记0\n",
    "    def best_action(self, state):  # 用于打印策略\n",
    "        Q_max = np.max(self.Q_table[state])\n",
    "        a = [0 for _ in range(self.n_action)]\n",
    "        for i in range(self.n_action):  # 若两个动作的价值一样,都会记录下来\n",
    "            if self.Q_table[state, i] == Q_max:\n",
    "                a[i] = 1\n",
    "        return a\n",
    "\n",
    "    ## 增量更新动作价值函数，对应相应的公式\n",
    "    def update(self, s0, a0, r, s1, a1):\n",
    "        td_error = r + self.gamma * self.Q_table[s1, a1] - self.Q_table[s0, a0]    ## 算时序差分的\n",
    "        self.Q_table[s0, a0] += self.alpha * td_error      ##  更新动作价值函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 469
    },
    "executionInfo": {
     "elapsed": 940,
     "status": "ok",
     "timestamp": 1649954992180,
     "user": {
      "displayName": "Sam Lu",
      "userId": "15789059763790170725"
     },
     "user_tz": -480
    },
    "id": "VzvRu8KZ-tZ9",
    "outputId": "22cd31df-9cdd-4a2c-83d5-cfccc320a9f0"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Iteration 0: 100%|███████████████████████████████████████| 50/50 [00:00<00:00, 769.27it/s, episode=50, return=-119.400]\n",
      "Iteration 1: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1071.13it/s, episode=100, return=-63.000]\n",
      "Iteration 2: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1470.56it/s, episode=150, return=-51.200]\n",
      "Iteration 3: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1724.55it/s, episode=200, return=-48.100]\n",
      "Iteration 4: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1854.89it/s, episode=250, return=-35.700]\n",
      "Iteration 5: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2271.96it/s, episode=300, return=-29.900]\n",
      "Iteration 6: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2174.00it/s, episode=350, return=-28.300]\n",
      "Iteration 7: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2380.88it/s, episode=400, return=-27.700]\n",
      "Iteration 8: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2380.75it/s, episode=450, return=-28.500]\n",
      "Iteration 9: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2377.72it/s, episode=500, return=-18.900]\n"
     ]
    },
    {
     "data": {
      "image/png": "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f/HFF0UA4htvvCFvGzp0qAhAfOutt+RttbW1YkFBgXjRRRcZXmfq1KkiAHHdunWG4yTmzp0rAhB37NihuP7QoUMV4wCIU6ZMUWzbsWOHCEB88sknTV0rLy9PHDFihPx89OjR4lVXXSWKoiheeuml4iWXXCLvGzBggNi1a1f5udb7O3PmTFEQBHHXrl3ytgcffFDkv+rZud95552izWYT582bp/la5s6dK2+bOHGiCEB8+OGHFWP79u0r9u/fX37+8ccfiwDEZ599Vt7m8XjEM888U3VOgohHyK1GEAnEWWedheXLl+O8887Dhg0b8MQTT2D06NFo3bo1vvjiC8VYNmaotLQUhw8fxtChQ7F9+3aUlpYqxnbs2BGjR49WbJNcd59//jm8Xq/mfOx2uxyP4/V6cfToUdTX12PAgAFYu3at4Wv57rvv4Ha7cfvtt8Nm838VTZ48GZmZmViwYIFifHp6Oq644gr5udPpxKmnnort27cbXqesrAwAkJGRYTguFgwePBgrV66Ex+OB1+vFihUrMGjQIHmfZC2qqqrC+vXrZasRoHx/KysrcfjwYQwaNAiiKGLdunUBry2KIm6++WY899xzeOeddyxZdW644QbF89NPP13xPixcuBBJSUkKK5TNZlNZLAkiXiFxRBAJximnnIJPPvkEx44dw6pVqzBt2jSUl5fj4osvxu+//y6PW7p0KUaOHIm0tDRkZ2cjNzdXjhfSEkc8l112GQYPHoxrr70W+fn5+Mc//oEPP/xQJZTefPNN9O7dG8nJyWjevDlyc3OxYMEC1TV4du3aBQDo1q2bYrvT6USnTp3k/RJt2rRR1etp1qwZjh07ZnidzMxMAEB5ebnhuFgwZMgQObZo06ZNKC0txeDBgwEAgwYNwv79+7Fz5045FokVR7t378akSZOQk5Mjx/4MHToUgPr91eKtt97CSy+9hBdeeAETJkwwPefk5GTk5uYqtvHvw65du9CyZUtVVl2XLl1MX4cgYgmJI4JIUJxOJ0455RQ89thjmD17Nurq6uRYk7///hsjRozA4cOH8fTTT2PBggUoKirC1KlTAUAlcLQy01JSUvDzzz/ju+++w5VXXonffvsNl112Gc466yw5+Padd97BpEmT0LlzZ7z++utYuHAhioqKcOaZZ+pam4JFytriEUXR8Lju3bsD8NWHijfYuKOlS5ci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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "ncol = 12  ##  列\n",
    "nrow = 4   ##  行\n",
    "env = CliffWalkingEnv(ncol, nrow)  ##  实例化悬崖环境 env\n",
    "np.random.seed(0)     ##  给定随机数种子，方便复现内容的\n",
    "epsilon = 0.1         ##  ε的值指定是 0.1\n",
    "alpha = 0.1           ##  α的值初始化是 0.1\n",
    "gamma = 0.9           ##  γ的值初始化是 0.9\n",
    "agent = Sarsa(ncol, nrow, epsilon, alpha, gamma)      ##  实例化sarsa\n",
    "num_episodes = 500  # 智能体在环境中运行的序列的数量     \n",
    "\n",
    "return_list = []  # 记录每一条序列的回报\n",
    "for i in range(10):  # 显示10个进度条\n",
    "    # tqdm的进度条功能\n",
    "    with tqdm(total=int(num_episodes / 10), desc='Iteration %d' % i) as pbar:\n",
    "        for i_episode in range(int(num_episodes / 10)):  # 每个进度条的序列数\n",
    "            episode_return = 0                 ##  序列返回值\n",
    "            state = env.reset()                ##  初始化环境，并给出初始状态 state\n",
    "            action = agent.take_action(state)  ##  智能体采取动作，拿到初始动作actioin\n",
    "            done = False                       ##  是否终止的\n",
    "            while not done:                    ##  没有终止就执行\n",
    "                next_state, reward, done = env.step(action)           ## 智能体前进一步，拿到下一个状态、奖励，是否终止的\n",
    "                next_action = agent.take_action(next_state)           ## 智能体使用ε-贪婪策略选择动作 next_action \n",
    "                episode_return += reward  # 这里回报的计算不进行折扣因子衰减\n",
    "                agent.update(state, action, reward, next_state, next_action)  ##  增量更新动作价值函数\n",
    "                state = next_state ## 赋值给当前状态\n",
    "                action = next_action  ## 赋值给后续的动作\n",
    "            return_list.append(episode_return)\n",
    "            if (i_episode + 1) % 10 == 0:  # 每10条序列打印一下这10条序列的平均回报\n",
    "                pbar.set_postfix({\n",
    "                    'episode':\n",
    "                    '%d' % (num_episodes / 10 * i + i_episode + 1),\n",
    "                    'return':\n",
    "                    '%.3f' % np.mean(return_list[-10:])\n",
    "                })\n",
    "            pbar.update(1)\n",
    "\n",
    "episodes_list = list(range(len(return_list)))\n",
    "plt.plot(episodes_list, return_list)\n",
    "plt.xlabel('Episodes')\n",
    "plt.ylabel('Returns')\n",
    "plt.title('Sarsa on {}'.format('Cliff Walking'))\n",
    "plt.show()\n",
    "\n",
    "# Iteration 0: 100%|██████████| 50/50 [00:00<00:00, 1206.19it/s, episode=50,\n",
    "# return=-119.400]\n",
    "# Iteration 1: 100%|██████████| 50/50 [00:00<00:00, 1379.84it/s, episode=100,\n",
    "# return=-63.000]\n",
    "# Iteration 2: 100%|██████████| 50/50 [00:00<00:00, 2225.14it/s, episode=150,\n",
    "# return=-51.200]\n",
    "# Iteration 3: 100%|██████████| 50/50 [00:00<00:00, 2786.80it/s, episode=200,\n",
    "# return=-48.100]\n",
    "# Iteration 4: 100%|██████████| 50/50 [00:00<00:00, 1705.21it/s, episode=250,\n",
    "# return=-35.700]\n",
    "# Iteration 5: 100%|██████████| 50/50 [00:00<00:00, 3393.12it/s, episode=300,\n",
    "# return=-29.900]\n",
    "# Iteration 6: 100%|██████████| 50/50 [00:00<00:00, 3694.32it/s, episode=350,\n",
    "# return=-28.300]\n",
    "# Iteration 7: 100%|██████████| 50/50 [00:00<00:00, 3705.87it/s, episode=400,\n",
    "# return=-27.700]\n",
    "# Iteration 8: 100%|██████████| 50/50 [00:00<00:00, 4115.61it/s, episode=450,\n",
    "# return=-28.500]\n",
    "# Iteration 9: 100%|██████████| 50/50 [00:00<00:00, 3423.20it/s, episode=500,\n",
    "# return=-18.900]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "executionInfo": {
     "elapsed": 3,
     "status": "ok",
     "timestamp": 1649954992624,
     "user": {
      "displayName": "Sam Lu",
      "userId": "15789059763790170725"
     },
     "user_tz": -480
    },
    "id": "pDQX_Nrw-tZ_",
    "outputId": "f6139e63-8251-4731-8110-31492a83c86f"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Sarsa算法最终收敛得到的策略为：\n",
      "ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ovoo \n",
      "ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ovoo \n",
      "^ooo ooo> ^ooo ooo> ooo> ooo> ooo> ^ooo ^ooo ooo> ooo> ovoo \n",
      "^ooo **** **** **** **** **** **** **** **** **** **** EEEE \n"
     ]
    }
   ],
   "source": [
    "def print_agent(agent, env, action_meaning, disaster=[], end=[]):\n",
    "    for i in range(env.nrow):\n",
    "        for j in range(env.ncol):\n",
    "            if (i * env.ncol + j) in disaster:\n",
    "                print('****', end=' ')\n",
    "            elif (i * env.ncol + j) in end:\n",
    "                print('EEEE', end=' ')\n",
    "            else:\n",
    "                a = agent.best_action(i * env.ncol + j)  ##  拿到这个状态动作价值最大的动作序列，最大的标记1，其他标记0\n",
    "                pi_str = ''\n",
    "                for k in range(len(action_meaning)):\n",
    "                    pi_str += action_meaning[k] if a[k] > 0 else 'o'\n",
    "                print(pi_str, end=' ')\n",
    "        print()\n",
    "\n",
    "\n",
    "action_meaning = ['^', 'v', '<', '>']\n",
    "print('Sarsa算法最终收敛得到的策略为：')\n",
    "print_agent(agent, env, action_meaning, list(range(37, 47)), [47])\n",
    "\n",
    "# Sarsa算法最终收敛得到的策略为：\n",
    "# ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ovoo\n",
    "# ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ovoo\n",
    "# ^ooo ooo> ^ooo ooo> ooo> ooo> ooo> ^ooo ^ooo ooo> ooo> ovoo\n",
    "# ^ooo **** **** **** **** **** **** **** **** **** **** EEEE"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 469
    },
    "executionInfo": {
     "elapsed": 1302,
     "status": "ok",
     "timestamp": 1649954995824,
     "user": {
      "displayName": "Sam Lu",
      "userId": "15789059763790170725"
     },
     "user_tz": -480
    },
    "id": "0ZzmFvbA-tZ_",
    "outputId": "ee855cdd-16db-425c-8dd7-71d23aa182a6"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Iteration 0: 100%|████████████████████████████████████████| 50/50 [00:00<00:00, 769.23it/s, episode=50, return=-26.500]\n",
      "Iteration 1: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2943.25it/s, episode=100, return=-35.200]\n",
      "Iteration 2: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1786.10it/s, episode=150, return=-20.100]\n",
      "Iteration 3: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1999.84it/s, episode=200, return=-27.200]\n",
      "Iteration 4: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2083.63it/s, episode=250, return=-19.300]\n",
      "Iteration 5: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2272.89it/s, episode=300, return=-27.400]\n",
      "Iteration 6: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1922.99it/s, episode=350, return=-28.000]\n",
      "Iteration 7: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2000.26it/s, episode=400, return=-36.500]\n",
      "Iteration 8: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2631.21it/s, episode=450, return=-27.000]\n",
      "Iteration 9: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2173.33it/s, episode=500, return=-19.100]\n"
     ]
    },
    {
     "data": {
      "image/png": "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FN9++y3mzJmDoKAgtGjRwup6OnXqhD/++ANHjhwRj4/169eL+3vixIm4dOkSwsLCIAgCNmzYgIyMDLFGb/bs2ejfvz8GDx6M4uJiLF68GAMHDsSPP/6Ifv362f15zp07h5tuugkXLlzA2rVrUb9+/QqXX7duHb755hs88cQTCA4OxjvvvIM777wTx44dQ2RkJABg27Zt6NOnD+Li4jB58mTo9XpMmTIF0dHRdpeLSCQQkUPWr18v3HnnncJHH30kfPfdd8K0adOEyMhIQafTCVu3brX5/pEjRwohISFCaWmp1WWWLFkiABDWrFkjm3758mUhLCxMePjhh2XT8/LyhNDQUNn0oUOHCgCEp556SpxmMBiEfv36CRqNRjh79myF5XzggQcEAEJ4eLhw++23C2+++aawb98+s+WuX78u6PV62bTDhw8LWq1WmDJlijhtzZo1AgAhOTlZuHr1qmz5li1bCv369auwPKbvEQRB+OKLLwQAwu+//17he99++20BgPB///d/4rTi4mIhIyNDCAoKEgoKCsRyAxAiIyOFCxcuiMt+9913AgDhhx9+qHA74eHhQsuWLStcRqpr165C165dxdfG7S9YsECctmDBAgGAsGnTJtl7J06cKACw+T0KgiAsX75cACB89tlngiAIwqlTpwQAwtq1a4XLly8LKpVKWL58uSAIgrB7924BgPDqq6+K7zfd98XFxUKzZs2EHj16yKYnJCQIQ4cOtVj2U6dOCU2bNhWSk5OFI0eOWPwsUgAEjUYjHDx4UJy2Y8cOAYDw7rvvitNuvfVWISAgQDhx4oQ47Z9//hHUarXZOolsYbMakYMyMzOxdOlSDBs2DP3798e4cePEmovx48fbfH9YWBgKCwtlTUb2ysnJwaVLlzBo0CCcO3dO/FOpVEhPT8eaNWvM3vPkk0+K/zc2VRQXF+OXX36pcFsLFizAe++9h6SkJHz77bd49tln0bhxY/Ts2RMnTpwQl9NqtWINg16vx/nz5xEUFIRGjRph69atZusdOnQo/P39ZdPCwsKwZ88e/PPPP1bLI33P9evXce7cOTEp3NJ2pFasWIHY2FgMGjRInObn54enn34aV65cwdq1a2XL33PPPQgPDxdfd+7cGUBZLVlFCgoKEBwcXOEynpCZmQmlUinmEq1fvx5+fn5o166dWOtkbFoz/ivNN5Lu+4sXLyI/Px+dO3e2ud+N/vvvP3Tt2hUlJSX4/fffxZpJW3r16iWrXWrRogVCQkLE70Gv1+OXX37BgAEDZDWUKSkp6Nu3r13bIJJicETkRCkpKbjtttuwZs0a6PV6AGW5OHl5eeJffn4+AOCJJ55Aw4YN0bdvX9StWxfDhg2zmEdhiTF46NGjB6Kjo2V/q1atEpN0jZRKJZKTk2XTGjZsCAA2hwlQKpUYMWIEtmzZgnPnzuG7775D37598euvv+Lee+8VlzMYDHjrrbfQoEEDaLVaREVFITo6Gjt37hQ/s5S0V5TRlClTcOnSJTRs2BDNmzfH2LFjsXPnTtkyFy5cwMiRIxETEwN/f39ER0eL67K0HamjR4+iQYMGZonfxqbKo0ePyqbXq1dP9toYKF28eLHC7YSEhODy5csVLuMJYWFhaNq0qSwAat26tRj0ZGZmyuZpNBq0b99efP+PP/6IDh06QKfTISIiAtHR0ZgzZ47N/W50//3348yZM1i7di3q1Kljd7lNvweg7Lswfg9nzpzBtWvXLPbWc1bPUapZGBwROVl8fDyKi4tRWFgIALjjjjsQFxcn/hnzWmrVqoXt27fj+++/R//+/bFmzRr07dtXTLytiMFgAFCWd5STk2P2991337nks0VGRqJ///5YsWIFunbtinXr1okBxWuvvYbRo0ejS5cu+L//+z/8/PPPyMnJQdOmTcXySpnWGgFAly5d8O+//+Ljjz9Gs2bN8OGHH6JNmzb48MMPxWXuvvtufPDBB3jsscfwzTffYNWqVWJQaWk7VaFSqSxOF2wksqempuLvv/9GcXGxU8vjDJ06dRK7769fvx6ZmZnivMzMTPz1118oKSnBunXrkJaWJvaa++OPP9C/f3/odDr873//w4oVK5CTk4P77rvP5v4wuuOOO3Dp0iWx04G9HP0eiBzFhGwiJzt06BB0Oh2CgoIAADNnzpTVNEir/TUaDW699VbceuutMBgMeOKJJzBv3jy8/PLLSElJsZpcbGxiqFWrlmzMG2sMBgMOHTok1hYBwN9//w0ADo+f1LZtW6xduxanTp1CQkICli5diu7du+Ojjz6SLXfp0iVERUXZvd6IiAg8+OCDYqJ7ly5dMGnSJDz00EO4ePEiVq9ejcmTJ2PChAnieypqhpNKSEjAzp07YTAYZLVH+/fvF+c7w6233orc3Fx8/fXXsiY8b9CpUyfMmTMHv/zyC7Zt24axY8eK8zIzM3Ht2jUsX74chw4dwp133inO+/rrr6HT6fDzzz9Dq9WK0xcsWGD3tp966imkpKRgwoQJCA0NddqYRrVq1YJOp8PBgwfN5lmaRmQLa46IHGRpjJ8dO3bg+++/R+/evcWLb1paGnr16iX+NWnSBADMup4rlUqxp1FRUREAIDAwEADMRlPOyspCSEgIXnvtNZSUlNhVtvfee0/8vyAIeO+99+Dn54eePXta/Yx5eXnYu3ev2fTi4mKsXr0aSqVSbLZQqVRmd/JLliyR5SXZYrpPgoKCkJKSIu4PYw2C6Xbefvttu9Z/8803Iy8vD19++aU4rbS0FO+++y6CgoLQtWtXu8takcceewxxcXEYM2aMGIRKnTlzBq+88opTtlVZxhyiWbNmoaSkRFZzlJiYiLi4OEyfPl22LFC27xUKhdhcDJQ1yS5btqxS23/55Zfx7LPPYvz48ZgzZ04VPkk5lUqFXr16YdmyZTh58qQ4/eDBg1i5cqVTtkE1C2uOiBx0zz33wN/fH5mZmahVqxb27t2L+fPnIyAgAK+//rrN9z/00EO4cOECevTogbp16+Lo0aN499130apVKzEHplWrVlCpVHjjjTeQn58PrVaLHj16oFatWpgzZw7uv/9+tGnTBvfeey+io6Nx7NgxLF++HB07dpQFQzqdDj/99BOGDh2K9PR0rFy5EsuXL8cLL7xQYVfn//77D+3bt0ePHj3Qs2dPxMbG4syZM/jiiy+wY8cOPPPMM2Kt0C233IIpU6bgwQcfRGZmJnbt2oXPP//cLNepIk2aNEG3bt2QlpaGiIgIbN68GUuXLhWTyUNCQtClSxdMnz4dJSUlqFOnDlatWmX22AtrHnnkEcybNw/Z2dnYsmULEhMTsXTpUqxfvx5vv/2205Kow8PD8e233+Lmm29Gq1atZCNkb926FV988QUyMjKcsq3KqlevHuLj45Gbm4vExESzIRYyMzPx9ddfQ6FQyMa36tevH2bNmoU+ffrgvvvuw5kzZ/D+++8jJSXFLC/MlhkzZiA/Px8jRoxAcHCwbOBJR02aNAmrVq1Cx44d8fjjj0Ov1+O9995Ds2bNsH379iqvn2oYT3aVI/Jls2fPFtq3by9EREQIarVaiIuLE4YMGSL8888/dr1/6dKlQu/evYVatWoJGo1GqFevnvDoo48Kp06dki33wQcfCMnJyYJKpTLr1r9mzRohKytLCA0NFXQ6nVC/fn0hOztb2Lx5s7jM0KFDhcDAQOHff/8VevfuLQQEBAgxMTHCxIkTzbremyooKBBmz54tZGVlCXXr1hX8/PyE4OBgISMjQ/jggw8Eg8EgLnv9+nVhzJgxQlxcnODv7y907NhRyM3NNeumbuzKv2TJErPtvfLKK0L79u2FsLAwwd/fX0hNTRVeffVVobi4WFzmv//+E26//XYhLCxMCA0NFQYOHCicPHlSACBMnDjR5n4/ffq08OCDDwpRUVGCRqMRmjdvLusyLwjlXelnzJhh9n57tyMIgnDy5Elh1KhRQsOGDQWdTicEBAQIaWlpwquvvirk5+eLy7mrK7/RoEGDBADCfffdZzZv1qxZAgChcePGZvM++ugjoUGDBoJWqxVSU1OFBQsWWOx+X1FXfiO9Xi8MGjRIUKvVwrJly2SfRQqAMGLECLOymG5DEARh9erVQuvWrQWNRiPUr19f+PDDD4UxY8YIOp3O5j4hklIIAjPaiKqz7OxsLF26FFeuXPF0UYjcbsCAATaHhyAyxZwjIiKqFq5duyZ7/c8//2DFihXo1q2bZwpEPos5R0REVC0kJyeLz907evQo5syZA41Gg+eee87TRSMfw+CIiIiqhT59+uCLL75AXl4etFotMjIy8Nprr6FBgwaeLhr5GOYcEREREUkw54iIiIhIosYGR++//z4SExOh0+mQnp6Ov/76y9NFIiIiIi9QI5vVvvzySzzwwAOYO3cu0tPT8fbbb2PJkiU4cOAAatWqVeF7DQYDTp48ieDgYKuPdiAiIiLvIggCLl++jNq1a5s9fNpUjQyO0tPT0a5dO3EEYYPBgPj4eDz11FM2n/Xz33//IT4+3h3FJCIiIic7fvw46tatW+EyNa63WnFxMbZs2YLx48eL05RKJXr16oXc3Fyb7zc+XuD48eMICQlxWTmJiIjIeQoKChAfH2/XY4JqXHB07tw56PV6xMTEyKbHxMSIT+aWKioqEh96CQCXL18GUPaMJwZHREREvsWelJgam5Btr2nTpiE0NFT8Y5MaERFR9VbjgqOoqCioVCqcPn1aNv306dOIjY01W378+PHIz88X/44fP+6uohIREZEH1LjgSKPRIC0tDatXrxanGQwGrF69GhkZGWbLa7VasQmNTWlERETVX43LOQKA0aNHY+jQoWjbti3at2+Pt99+G4WFhXjwwQc9XTQiIiLysBoZHN1zzz04e/YsJkyYgLy8PLRq1Qo//fSTWZI2ERER1Tw1cpyjqigoKEBoaCjy8/PZxEZEROQjKnP9rnE5R0REREQVYXBEREREJMHgiIiIiEiCwRERERGRBIMjIiIiIgkGR0REREQSDI5qsOslejgykkOp3mC2Hr3B+npK9Qb8d/EqSvUGXCsu22bJjXUIgoDrJXrZsiV6A4pK9RbXVXJjXf9dvIqTl65ZLH+J3oDiUoPZ9HNXipB/tQSCIODEpWu4VqxHUanlspdIPuP1Ej1OXLoGw43lLhQW42Jhsay8RoVFpcjLvw5BEHDuShH+u3gVBddLZOu+UlQqfoZzV4pk80otfHbp/gEAvUGwun8AiPu3uLRsXxnLd61YL843XSeACtdZXGqAwSBAf+PPdHvGdesN5d9t/tUSs89nydXiUrs+n+k04+czHo/SzyQIAk7lX0NhkXzd0u0ZDOXltuRCYTHOm5S/qFRv8diztr2C6yXid208ZiyVx/Q4Nhgsf0cAcPZy2XGVf63EbJ50H5nuV6Ds+LL0/Z3Kv4b/Ll41+y2alktvUi7j79nSslIV7Wej4tKydZy/8bvJv2r++aytSxAEi795wPJxXWJhP1SW3lC+zfyr5d/zpavl37P0XJR/zfxYKNFbLrM9TD+X8VwkPV9J95Xp8XS9RC+e04zOXL6O/Gsl4jlbuk+lv2dBEHDyUtkxY+28Yen4s6ZEb5BdV9b+fdbsOuNuNXIQSCo78XebsQbtkyLx4dC2dr/vo3WH8dqKfVj0UDrSkyNxtbgUXWf8hoSIACx9PNNseUEQ0P+99dh7qgAhOjWKSg0ID9Agr+A6pt7WFPvzLuPbbSew6OEOSIwMQK9Zv+PclSJo1Uo80iUZY3o3kq3r1nfXYX/eZXHaba1qY/a9rcXXh85eQfaCTSjRG/BxdjvEhugQHqjBoj+P4YVvd0GtVKBWsBYn868DABQKIK1eOJY8liE+qXnGz/vx4R+HMf+Btqgb7o8hH/6JU/nX0blBFAanJ+Dxz7cAAOYMTsP/bTyK3SfzsWpUFxSVGND7rd9xrUSP8AA/XLxxclcrFfhgaFukRAehqNSA/u+tw1XJSWvCLU2QUT8SqbHBuPW99bhSVILVo7vhxKVr2HUiH09/sQ0v3twYD3dJhsEg4I7/rceZy0X44alOiArSmu3zMUt24OfdebheWnYBSI0NxoDWdfDmzwfwdM8GKLhWggUbjmDJYxloUy8cALDnZD7unb8Rt7SIw7Q7WqBEb8CWoxcRpFUjITIAt723HtdK9LhSVIouDaPxVI8UJEUFQqtWYeTi7Vi1Nw9v3NkCM1f9jRB/NV64uTHu/+gv6A0CXr29GQanJ5iV8/iFq9h+/BKe+mIb7mhTB2/c2QJqpQJ3z8vF8QtX8cNTnRATogMA/LT7FJ74fCsm92+K+zMScb1Ej5vf+QOHzhaiSVwIXri5MYYt3ITHuiZjdO9GeG7pTizZ8h+CtGr8PKoL6oT5QxAEvL/mIGbl/I2xWak4fvEqlm7+D//3UDraJ0XIyrZy1yk8sWgrBAF4656WuL11XVwv0aPnzLU4cekaAOCONnXwSJdkpEQHYeL3e/D5n8cQpFVj1aguqB3mj90n8nH7/9ajRF9+AZp/fxrSkyNxrViP2FAdlm07gee+3okBrWpj+l0txeUe/b8t2Pjvebx7X2t0a1RLnL5g/WFM/mGveFzNGZKGxnHBqBsegK3HLuKBj/5Cm4RwtE8Mx6ycv/HBA22RlhCOy9dL4a9RIeut39GibigWPNheXOcL3+7CF3+VPTMyNkSHNc92w+FzhRjwv/UY1jEJ4/qm4nqJHkfOF2Ly93vx9+nLWDO2G37ZexrjvtmF8AA/nC4owpsDW+KutLpm3/PuE/m4438b0KVhFN4d1Ab+GpXFZe6auwFBWj/xAqxSKvDZ8PZIiQ7C/rzLSI0LxrHzV3HP/I3olBKFR7smo0NSJJRKBQZ9sBEnL13HD091QsG1EkQHa6FUKPDc0h1YuTsP79/XBr2alA3yeyr/Gnq/9TvaJoTj4+x2sie0518rQcG1EqiUCviplIgONv99AWWBXJ+3f4dSqcBL/Rpj+CebxWBLqQAWPNgetUN1yF6wCXqDgJG9GmDCd7vFY0GpAOpFBOB8YTGWPpaJRrHBOH7hKoK0aoQHamTbyr9WgktXi5EQGShOm/Pbv3gr52+M6J6Ckb0aQG8QcN8Hf2LXiXwYBAFFpQbo/JQoLjVgZM+GUCiA9349iA+GtkXXhtHY8O85PPbZFjSvG4rPH+ogrvONn/bLtp0YGYCc0V2x6cgFDPnwTxgE4P4OCbh4tRg/7jwFAKgT5o/VY7pC51f2vRaV6jH6yx1YufsU/u+hdGTWjxLXd/DMFdQK0eLw2UIUlRrQpl4YFAoF7vtgI46cv4rVY7ri77zLGPrxX0iNDcZ3T3aEVm1+vLgDB4GspOoyCOS32/7DqC93AAD+ebUv/FTWKxENBgE/7clD24RwtH+t7Jl0ARoV9k7pg81HLuCuubkAgO0TbkJYgAaXrhZjxa48FJXqEaBR4fmvd9lVprvb1sVXm/+TTTvyej/x/9dL9Eh9+ScAgEatFO9qvn48E2kJ4Sgq1aP3W7/j6Pmr4ntSY4OxcmRn3D0vF5uOXLS67Ue7JiM7MxFxof5IHLfc6nKdUqKw7uA5AEBUkAbnrpTdAb56ezNo1So8u2SHbHmFAjD+wrRqJeIjAnDwzBWolQooFJBdOPs2i8XK3XkAgJf6NcZrK/ZBemP31ws9ceT8Vdw9r2x/Z2cmYlL/puL881eKsO7gOYxcvN1q+YN1aly+XnZH16JuKJ7vk4rM+pFoOXkVCm5MP/J6P7y2Yh/m/34IAJCWEI4tR8333R2t66BDciSe+3pnhdvp1zwO7w9uI5v/v98OYvpPB2TTeqbWwiNdknHP/I0Ayk668x9Iw5nLRZj6w14cOlcIANj68k1YuuU4XlshP5EbTbmtKSZ8t0d8PfqmhkhLCMexC1cx/puyY1GjUqL4xp1p/ehAvH1Pa+gFAVeLS1EnzB//W/Mvvtxc/pDpmQNbIipYi6Ef/2W2vYc7J2HxX8dx+Uat0R2t62BoZiJW7s7D3LX/QqVUQHnju26XGI5zV4px9HwhHuqcLO5jAHj7nlZISwjH3lMFePqLbSgqNcBPpcDb97RGn2axWPTXMby8bDeAssCo9MbBoVEr8e6g1nhq0TbxMxlFBWlRK1iLg2ev4K60ulj05zEAQM6oLmgQE4wSvQGtp+TgiqTG68enOuHV5fuQe+g8gLLjbvCHf+KfM1fEZV64OdXi/v/jue74df8ZGAQBjeNCUFxqwPqD5zDvxud8rGt9jOubiqPnC3H0/FV0aRgNALj13XXYdSJfXI9SARgEoFFMMM4XFuPclSLUDtWhT7M4fLz+sLjc2KxGGNE9RfzNdkyJxJ+HLiAmRIebmsRg4YYjAIC64f6YOyQNm45cwOYjF7F8V9mF/YMH2qJdYjiW7zqFa8V6TP/5gKy25JNh7dEwJghxof4AgLz869j53yXUCtFhwPvrZZ/dT6WAQSirURrSoR5+3XdGvAkzUisVMAgCTCutZt/bCs8t3YnoYC2e7d0ImfUjoVIqsO3YJby75iD2nMjH2KxGaJ8UgZ/3nMbctf/K9kFYgB9e/Ha32fdhydwhaRixaKsYzO2ZnIVArRp3z8vFX4cvmC3/41OdsHTLf+K+tOT7Jzvi/JViNKkdgk9zj+D9NWXla58UgSe7p6BLw2jsO1WAm9/5A9KIY3B6Pfx38RrW/n0WAPBk9xR88MchFJUaMKh9PKbd0cKuz2Svyly/GRxVUnUJjn7ceRJPLtoGAPj5mS5oFBtsddlPNhzBxO/3IDU2WFZrc3jazVj791lkL9gEAFj8SAd0SI7EpO/3VPhDsldKrSD8Mror9p4swK/7T2Ng23ik3wjO9k3pgwnf7caSLf/hjjZ1MOvuVvho3WFM/XGvefmHtcfwhZvEi4k1nVKi8MEDbdF4wk+VLmu/FnFIiAjA/377Vzb9+T6pZndjSkXZPteoleg64ze7t/F4t/rIv1YiXuA0KiWe69MIDWOC8cc/Z/HFX8dlFzlAfhG1JrN+JDb8e158fei1m/HE51vx0548u8tWkVbxYZh4axN8u+0E4sMDcOlasXjyNNKqleLd7vWSiqvT29QLw4lL13C6wHaTnSOa1wmFzk9pFkwnRwXi0LlC3NGmDlbuysM1K81eQNmFUuenwuXrpXjrnpZIqxeBLjPWOFQefz8VXhnQDGNuBN6pscH4ZFh7dH/zN1kNZGWM6F4fY7NSxZub8AA/1IsIwI7/8jF3SBpeX7kPR27cZKQnReBPk4tm09oh2HOywGy9jeNCsO+U+XSj5nVC8dWjGUh7JQdXi/X49olMNI4LQfNJP8tuFOYOaYOxS3aKAaeR9KbI6Ilu9c1+d/YKD/BDvchA7Dh+yeoytUN1WPp4Jr7cdBwf/HEIV4v1yEiOFINHAAjUqLD2ue5YuTtPDGCBspuE2BAd/jlzBVq1EmvHdsf7aw7is41HKyxXk7gQXLpabBZcmZarovn2mn9/GvaeKsDbv/xjcX796ED8e7bsxqR9UoQYQCVHByIuVIf1B89jSId6+L+NZeeliEANLpg0IX80tC32nizAzJy/7SqTcV/Fhuoc/VgWcYRssumipD1/f571kxkA8WIsDYwAYPIPe/HMl9vL13PjpLj7xh2gSqmAPdRKBdQWlg3z9wMATPp+D95c9Td6v/W7OE+pBFrVCwMAXLleit8OnMG0FfsAAI92SZat54VvdlkMEO5tF4/eTcqfp7fu4Dlsr+AkWZHlO09ZPEE/2DERdcL8ZdOe65OKBjHBsmpye3y87jC+3XpCfF2sN+CV5fvwwMd/4YM/DpsFRgDw1WMZeL5PKmbf28rqeqWBEQBcuFpsM6CqjP8uXsMzX27Hp7lH8eqKfWJg1LJuKACgXWI4sjsmAoAYGHVuEGVxXQCw9dglMTDqmBJpdbmRPRtAU0GNqJ9KgbYJ4WbTd53Ix6EbF4Opt5XXzBlrrro2jEbjOPObCen3XKIXxJqzjvWjUC8yQLatdoll/9eolEiOtnwc1AnzR50wf1wr0ctqmGbd3QoxITp88IB5c/jrdzS3+nmlFt8IpH/dfwYAkJkShbrhAQCAXScuiYERALPACIDFwAgA9p0qgJ9Kga43aoQszX979d9iUHf7/zag8/Q1ssAIALo0jEafZrFm7zcGRjmjuqB5nbLjx9HASKkoOw8aA6MuVsp8Mv865v9+CLNX/yOW2xgYKRRA/5ZlTftRQVrUj5J/lxNuaYLvn+yEMTc1xPwH2iI2VGfXeXHvqYIKA5972sbjy0czMKBVbWjUFV/GQ3QVZ8888tkWWWD0zqDWeLpHCh7vVh8AxMAIAN64swXqRZQdJw9mJiI1tizA+GXvGXGZC4XFZr+7aSv34/d/ymqHgrRqfGQjlWP2va2cHhhVFoOjGuqSJLLfd+pyBUsC560kki7ccASXJEHWgdNl6zFeRNLqmV94pJJunEhm3t0Sa57tBp2fEmEBfnhnUFkO0dZjF3HLu3/gryNlJ2dpAqpKUR5QGQQBn/95DKUGATc3j8VzfVLLaos6JQGAmCNi6oGMRMy7Pw2z7i7P9fg09wgAIDpYi8TIAHH6PW3jLa5DoSi7+7RG56fCR9lt8e6g1vjykQ5Y9FA6HutaX5z/0I0yGk841gRry/K1rpXo0aJuqLjvpCIluQoJkQH4aGhbtKkXjse71cdtrerIytmgVpDsvfd3SBDzK/Lyr8Ngo0LZUm6JNeeuFMmaOgGge6NofP14Jqbf1QKz7m6FlGh5ed65tzWyMxPN1lXb5ITZ7MYF0tSU25piRPcUq4EHANzfIRGD2tezOM94zN/Rpi6WP91JnK5QlNUwBmjMLzgjezUwC4Rb1g1FrRt5UzPvbolnezfE63c0x1ePZmDBg+3w5aMdMPqmhhbLkBgVIAaJxt/Wq7c3Q5PaZRekjilRspyzsAA/3Gvl8yREBkCpAEL9/VA33B/nC4uR/uovYvNMz9RaqB1WVs7vtp+0uA579UithU+Gtcf4vqlm80oNAuatPSSbdvayeQ1ggEaNTpIAOUxy7Abr1KgfHYT/mTTVAsDwTkkY1jGpwvL5qRSoHarD2rHdZdPn35+GuuH+Ft9jbPYxtSC7Hd4Z1FrMZ6pv8ru6pUVt+GtUeKpnAzFgVCrkwVHHlEho1EqEB/jhtdstB7ejb2qIjOTyG4G72tZFfEQA3r63NVY90wVv3NkcOyb2RrBWDY1aiXn3p4nLGpvLW9cLs3jekIoM1KB/y9oY3buRGMBLJUYGYPEjHfD6Hc1xX3oCUm+0OOQVyAO5Qe3j0b1RebB58MwVsSZ2+dOd0LNxjPjbe75PqiyoH9KhHvo0i6uwnO7AhOwa6oKkR8XeCqrBAeBCoX3NF3tPFuBiYbFYpdq1UbQY2Fjyw1OdsOu/fHRIjoBCocDKkV2gUijwz5myC4FBAHafsFy2sjyOspNMqUEQL+Y9U2OgUpbduaqVCny07rDF9wOAWqWAQqHAHW3q4q/DF7B403Ex5+fWFrXRvG6ImJfVLilCloNiFBmowTePd0Svt9aKd7WT+zfFxO/3iBeH1NgQ8Q7L1LNZjZDVLBYqpQJ3/G+DbF6DWkH49+wVPNwlGcWlBixYfwRKBfDCzY3x/pqDOHyuULb8+nE9xJysjORI9GwcI5tfKGmC+fLRDBw9X4gxS3ag4FoJnu7ZADv+u4Szl4uQl39dzEd4vk8qOjeIwq3vrRNzBVrGh+H1O5rjjjZ10LR2KP45fRnPfLkd/100D0L9/VRi85OxWQoABrSuA7VKibtvBJ1nJBdIYxL90MxEfLX5uKzpqHaYv+yOulfjGCz68xiaxIUgOzMRj3++FeP6puKBjMSybUYHmtV4dm8UjUe71ke7xAhZb7pejWPwy77T4uu4UB0CtWo0iQtBm3ph2H2yALPvaYXIIC1G926IDf+ew+D0BHRpGA2NWonOKVHomBKFq0WlKCo14Mj5Qlmid0JkIJ7s0UBSjrJE61bxYaj1qE7MJTOKDw9ApwZRWLyp/LgzPY6kNa6qG78HaZ6b0fv3tYGfSgl/PxX2nsrHY/+3VTweBrWvh9ta1UHBjZsP4/cozal7qV9jvLJ8H0y9O6g1nl68DX7K8hwuY/J976axmLbScl7YgFa1sUwShDWOC8HYrIYYtnAzxtwIFqWJvCO6peDNVQdQVGpA90a1oFQqEB8RgPaJEbJzzKibGuKPv8/K8pJiQrRiTWOTuBDMvrcVArRqWSCrVJTdyFir1TH+1m5qEoOCayX48/AFhPr7oY1JzWMtSQJ3dLDWYvK5WiXfxjO9GiIiUAM/pRL1IgPwxk/7xRvBP1/oif8uXkNaQjgGta+HrLd/R+0wnezGMzEqEIk3gp4VIztDbxCQGBWIR7smywLR1NgQ/HVYXktsSvpbS0uIkDWR3dM2HgqFArXD/MUgvHGc+Xlt3v1p6NIgGkWlehw9fxW5h87j9RvHQWpssHgjOOGWJhjQqjbaJ0XImrBbxVd8U+0uDI5qKGm34o2HzqPgeglCdOY1IBcKi82SB63ZeSJfbKKpHapDo5jypodgrVqWPzDltqYI0qqRUb/8bsh4V3PoXHnipyVKBaBQKMQTmd4giBcD6cnN9A7NfD3l8zPqR8ouQk1qhyA5qvwuMCEyAKH+fmbdp/01KtSLDMALfVMx6UYvoiEdEtC/ZW2E+luvUTLS+anQLjHCYnfYe9vXw51t6iBY5wcFgPva10OQTo24UH9Z8xoAjLmpIXR+KjzXpxE+2XBErBKXSowMwN+ny/ZtRKAGEYEa/PhUJ5QaBITo/G70DMtHXkF5zVFsqBbN6oRCpVCg9MY0lQJQq5TixattYoTZRaVOmD/uTKuL5TtPitXyE25tgoUbjuD8lWL0biJvMqkvqeGpd6PGLikqELnjeqL9a7+g6Ebgado7LzZEhw3jesBPpYTOT4XNL/WS1aDVN6mRAgCtWoUON+7CY0J06N+yNv45cwUjuteXBUfG41GhUGDRwx1wrVgv9iRqUy8c217ujUCtCmpJE4L0gmutVsuUQqFA+6QIvHdfazy3dKd4gdKqleicIm/qMc0NlB3vN/7/f8PT8eSirWLTeWyITlaWepEBmNy/Kd765W8MSU/AmN4NxYue1NisRsisH4VSg4DEyACcLrguSzxvlxiOW1vWRucGUQjW+eHI+ULo/FTiPlCZ/P40KiW0fko83aMBHu6SjGslehw+V4hPh6UjLMAPOj8Vtk+4STwPRQdrcXvrOth3qgCD0uvhjjZ1cO5KsexYMT3uVJLzgvh5IwLE4Kh2mD8aSM5LCx9sh5GLt+ONO5tbXJ+pNvXCMaxTIg6dLUTtUH+zc6a055ulmhfA/LykVChkx2lKrSCxA0RMiE7ssRkdrMVvY7vBT6kUv2tT8ZIa6JZ1w2TzYkPMm/TqhPmjW6NofH4jdaKOpOYs1N8Pvz/XHSqFAtdL9Ai20Dxn2vTVITkCWU3Lftv+GhXCAjRoFBuMVXvyYBCA9we3EfeRv0aF9Bu/Q2kNr7G53dMYHNVQ0pyj4lIDftqVh7vbmTcdWcpHalArSNZzxUgQgLd/KUu4S44OEi9yAJAUHYid/5XlIh14pU+F3TNtnaCM81WSZjWxG63kvaZ3aBVtp1V8mGxeq/gwxISUX4jrhvuja8NofL9D3uTQPrHsx31v+3r468gFNIkLgUqpMOuOa4tWrcLYrEZ499d/xLyb5OhAhAWUr0d6UpeexD4a2lasJXqiWwqe6JZicRvv3dcGL367C+P6NhanSZuHYm+chPPyr6NU7HJcto+Uxu5DsPz9SKfFhuiwflwPAMC2Yxfx79lCRAVp0CklStYtXUr6ObWSHIrQAD8E69QoulGDYfqdqpQKBEsuUKbBk6VmNZXJOozNuP+elR/T4ZIy6fxUYldladmc6ZYWtXFLi9piz6v4iACEBvjhvvR6Yt5fkFZ+ylZKEiOMtUgdU6KwbUJvLN95Cp9tPII37jTv8TM0MxEPZCTILuZ1TJqUWsWHyy62L/ZrghdubowXvt2N/GvFYk8i43dnGogqTZI2bmkZh5kDW4rbnHe/ed6J9DgAgLfuaSX+P0irRqTJ92sWHCnNg6P4iACxZsK02axbo1rYMbF3+ftNApfk6EAx/6xs/WW/VUs1JkbvDmqNxZuOyXqSysto+lq+zel3tcDzS3dilIXmVks3sNaYBmFqlQIqyZcSrFOLv9O728Zj6o97zcpsPN4s1YAB5vvL0rlB56fC149nyo41U1FBWgzrmITrpXqk1DK/ofEEBkc11MUbzWot48Ow4/glrDlwxmJwJE3GM7qlRW289Yu814GxScIYNCVEBiA+vPzE2qxOqBgc2Rq3wvQHB5TVehiTRI0/euMPsVRfXnOkrkTNkXQ7pjk/yVGB4hgm14r1iAv1x6u3N0OIvxoD0+JRrDfgy03H8eLNZYGGzk+F/w1OQ1WM6J6CjilRYhfh+lHWTxLSu3xb+UpGDWOCseQx87GojIx3gXkF16EX5IGQdF9ZDI6szK8fHYQ//jmHW1vWltWwWGLsWWeazCtN7rR0MaxIkoV9aOn4sjTd3g4FzrYgux1W7c3DkA5lzVMv92sCrVqJjvXNk9TVkoud6fHer0Uc+rWwnrtherGqK/m9BuvUFi9SCoUC0+xM+labREcqhaLCC6QjLB0PprUq0vNQmI2AVrq+6GAtnuyegtFflQ/PYeucAgC3tqyNW1vWtr4N06DFpLz1o4MsjhlXWZYDR8vzW8aHObRN0xsNlWlEfIM93/uEW5tUevuuxOCohjIGR2n1wrHj+CWrIxkfOmteQ9S3eaxZcNSkdoisSSJAo5LdbQzrmIgmcSFmicCWmP6on+3dEL8dOCsGR8b50oRsY9Of9ORlqQeclPR3bPrjNZ5gH+pc3vMtWOeHVwaUXxjaJcoHDnSGeMmdremdvFSgZN/G2xkc2WJMyD53pUgcOdd4IpflttioOZL+/4nu9VE33N9q4rPUj093wtoDZzHUJBH7/oxEvPHTfnRIjqh0AGOp5sjacWG6LlvHj6t0T62F7qnlNWz+GhUm3mq5FkJaRFs1pbaE+vvh/fvaYPPRC2LuXlWYXierWj5LTMuoVJh/b7YCIvn75TlcrjgmTIM3ewIuR5iWVaVQyH4/zvgsZr9Hz/xkXILBUQ11sbCsWc148bhoZaj+QxZqjlKig9C6Xhi2HbskTqtlMpKs8QSw5tluyMu/jpRawUipZX0sJSnzOx6lxYuvPCG7bJ6ti7iU6Z3tq7c3w4vf7sZkK9Xh7hAZpMU3T2QiQGM9ORQoy/MBypKGTZt7HOWnKs/hMq05kp7QLZ3MrQVHtYJ1sgCzItYS1x/qnIT60YFonxSBV02Sgq3VAhmF6Pyw6KF03Pfhn+XltzM4sracN5HtdydcZG3VNlWGaXlcEQQoTWosFSYBgHF68zqh2HUiH7fY+GzSAM5SE50zahPNghYXHWemx6/p53HG9+GK/eMtGBzVQMWlBnFMnOQbSafS5wFJWUqOVioV+PyhdJy9XIRHP9sCQSi7SEsZTwBJUYE2u49aWr/puixdfMWcI0lwVKmEbJM72/va10Nm/SgkOKkmxlFtbAyBAJTV8uSO74FArfN+wsYq8VJ9eQ6X6b42/b+lac4+P/qplOh9I8nTkQDGOB6WkdVmNS+pOaoMaTOGtwVzZs1qLiifpd565rVJCnz5aAecv1Jss5bVNNgyD2SqPvqNedBS5VVaZClItPU7rvQ23FQL5gkMjmogYyCkUJT3DLp044Gs0ual6yV6sVvvggfbYeqPe/HsjWedBWjUSIhUY/nTnSEIgtlAglW5izW74zT9UZucBPWCAONTEyqVkG2yHYVCUelAzpOMjzRwFrVsf8oT3G01Vzr7pGuNIwGM2d2tlePCN2uOyv/vbcGcaRzhigunvLee+TSgbL8EaNQIiLB9uTM9jk3L7IxAxjxocU10ZLb/XREcWUj6ri4YHNVAxkHBgrVqRAaWNYeVGgRcKSqV9fz57+JVCELZct0aRqP7mG5m6yr7gTn3DsvSyc1Sl+UqJ2R72cXE06RDI+gryDmy2Kwmu+N23diyjlTjm+dFWAmObCTKeiNpmb3trt0dNXHSbRhrqsxyeiqxXfn+tNQ7surHtqXhB1zBtObOWg18VSiVCtm4Wt52DFYFR8iugYxNasE6P/hrVGLX6UsmeUfnb3Sfjg7W2uxtYNYUVoU7CEt38JYSCY3TDEJ5jkxFNRymw+z7Qs2AOxn3p3RQTbVJIGr6fyOlbL4Ly+hANb69AZWlHA1v564aO0eY17q4uOboxn8tJSI7sj61UmkWDDml5sjs/Fb1dVrejslrhcIs4dwp27HRk9VXMTiqgQpvBEeB2rJEXuN4LhdN8o6MSdr29PYwPSFV5Q7C0h2npYRgseZIUtNhmlApZfq8H1fdsfkqlZiQbRCfrSY2q0l2naWg0lLuh0vK6EDtjkKhkOVBWTuBV+Wi6ineHByZnRNcHByZdtQQy1GJGzXTGmpXJJW7K4nZUnBamQ4r9vLmY7AqGBzVQMYHYhoH+DIGP6Y91oy5SeEBtgc0tJRE7ShL1c6WftTShGwxR6aCuxjTmqPq9EN2BjHnyIDyrvwmtXSm/xeneSjnyN4Lrj3lszc3yZtUdLx7mjuajyzVWlQlSdi0BtT8Rs0JCdl2NvNWleVxjlwcHPnADYW9GBzVQMZmtaAb+UXG4Me0x1p5zZHt4MiZd4mWelkoKwiOpAnEFf34zWqOvOxi4mnlOUeGCrvyWwp83XWRVtkohz3vs3axdNdFy5kqqin1NIWiLB/FyBU1R5bOC1XpKm9aA2oeYDhSSjlP1hxJpzkrP6i61hwxIbsG2fVfPrYdvyjWCgQZm9UCb9QcFcqDo/KaI9vNas5MvrR08pAnBMuX0+vtG+fIT+17Fz93kuUcGeTTZPvfRrOaK5MyLSXm2/U+Owa/M53uCwnZrsghcSa1UoESvTx/zdnrNzJ+/qrkjpkG+ebnIickZLtpJHZLj9qRTnNWzzJHf5PejsFRDXLre+sAlA/8aGxWC/U35hzJm9WMOUj2PCfMmXdDFquDZRe3G71SFOU1R5ZGyLb04Eup6vRDdga1ZBDI0hvRkaU8DksX4coMoVAVjlbhK+04gZtfVL2/Yt3b79rLjhvrz+SrKksX5qolZMvXbV4L5UAhzbbhvFr2Crfjppoj6T7yhRsKezE4qgF+O3AG7685KL42jnodpDU2q5X9a/rE+aokZDs7OLJ0cZNezC0NAmmaM6KRPNPNGy8knmYMBsq68pdNM01+ByyfzN3VpdzRxx/YmzBufL4b4JwLoau5IsHWmexpznTW+o37oiq95EzLW5X8JXu2Abiuxs8s2LeSu1nl7XjxcBJVweCoBshesMni9CAbvdWMzWph/nYkZDuxqth2L4sb/xprjqwFR6Y1R5KEbG+8kHhaeUK2pCu/yjw4sjgIpJtyX+ypAbJEVv4KaraUSgUgBkfeHx15c0I2YFqz5dr1m45/ZmkZ2+uTnyNckpDtppwjs5ojleXczary9gDdUQyOqjljfpElQTpbvdXKXtuTc2TpCdyOslQtrrQQ9CglF3PBUnBksh6NynwdVE76rDrT3n+2mm+c/UBLaxw9EdtbgyHv/VTJwnmAtzerycvn/B1q6WaoKrXY0rjZUnDkjI/grpwjSzVUtnqdOsJWZw1fxeComjty3vzBsUblzWpV761m2oRVlbwTszsrlcmP2iS3QFpzVNHFkzVHFZM2U5o9W81G1bmrm08sbadyFz37gh61iy/mzubt3ajlF2MXr9/YrFaFpjDTmhVX1By5q1nNUicZV/RutNVZw1d5/6+/EhITE290Hy3/e/3112XL7Ny5E507d4ZOp0N8fDymT5/uodK6x/bjl6zOCzTtrSYJjgRBKO+tFmhHbzUn3g1ZvOOxcFGUJmSLI2RXcLHwk1wVq9Fv2GlUkmDT9PEhtkbA9sQ4R44mZFcU9PjaXbBv1Rw5v3wWh/ioyiCQJjUrPp2QbWE7rmiGreic68uqXc3RlClT8PDDD4uvg4ODxf8XFBSgd+/e6NWrF+bOnYtdu3Zh2LBhCAsLwyOPPOKJ4rpEUakeY77agS4No7HR5IGwUsFis9qNmqPC8ma1K0WlYmKqPYNAOvNuyNIoyJZqJownPYMBYo6MrIZDKX/uj7S3mjdeSDxNWhMnjnOkMr/gWAouTPe7qzh6sZUnZNu3fl+4C/b2Rze4en9aHBzW5AuuTM2RNJAyDSbKtuGMmiPJ9lyZn2fjPMqco4pVu+AoODgYsbGxFud9/vnnKC4uxscffwyNRoOmTZti+/btmDVrVrUKjn7anYcfd57CjztPIVCjsrqcabPa5aJSlOgN8FMpxXwjnZ8SOj/r6zByZW81a0+TLh+Xx2AxIdu4TOmNCz2b1SqmlO5Pk5ojW4m17qpxcfTkbm8iqq3Ec2/j7TVHrh6HydJNU1VqsU2fzWg2VpATPoPSAzcSxm25ovnb2zsFOKpaNasBwOuvv47IyEi0bt0aM2bMQGlpqTgvNzcXXbp0gUZTXhOSlZWFAwcO4OLFi54orktI28ULi/VWlysf58hPHMnWGBRdrMSjQwDn9sCw1FZusVntxr/SnPOKeqqw5qhi8nGOjM2UZfNsNWd54tlqDtccVXD374qEVVfy9uDI1SN4WwpmLZ0/HFmfxWerOblZzaW/FRsJ2c4K/r39GHRUtao5evrpp9GmTRtERERgw4YNGD9+PE6dOoVZs2YBAPLy8pCUlCR7T0xMjDgvPDzcbJ1FRUUoKioSXxcUFLjwEziHMZfIKCEyAEfPXzVbzhgcqZQKhOj8kH+tBF9tPo5HuyRXKhkbcG7NkelbTU9SpgnZFW1XFhxJa4584MLnbsZ9ZRzRGCgPtG2Oc+Sm5ihHuyLL726tL+drJ3pvz/dwdbOfpebcqoxNZBq4uDoh2135ecbXrhhyw12j47ub19ccjRs3zizJ2vRv//79AIDRo0ejW7duaNGiBR577DHMnDkT7777riy4qaxp06YhNDRU/IuPj3fWR3MZY/6NUceUKPH/0m75If7lsbGxO/+Mnw9g2faTlXp0CGDpbs3xQ0thclIyqzmy8pgAS+WQvpYlZPvAhc/dLH1n4r62NUK2J7ryO3jRq7Arv/S484EHz3p7TyFXjKsjZem8UJVmNdNgzmyIEid35XflV2ZpP7giN9DXOjHYy+trjsaMGYPs7OwKl0lOTrY4PT09HaWlpThy5AgaNWqE2NhYnD59WraM8bW1PKXx48dj9OjR4uuCggKvD5BK9fLgKLN+JBb9eQwAEBfqj+f6pOJqsV5WK2RMzgaALUcvIDU2BID9zWrOHg9EpVBAj/KxdizVTFh8OnwFJ0bmHFXM8mNBbsyTPlbBQtBgmsjqKo7WUKntDHrcNSSBs7grKHWUq0dOtxTMmnbEqFRwZBLMmZ7HnJOQLS2z6+onTItqepPprOPF2wN0R3l9cBQdHY3o6GiH3rt9+3YolUrUqlULAJCRkYEXX3wRJSUl8PMrqxHJyclBo0aNLDapAYBWq4VWq3Ws8B6iNxn4sUGt8h57/hoVBrWvZ/YeabNbw5hgMeco1N6aI7OeEVX70SuVAG6kS6lVlmuOLJ30Kso3YLNaxSwFPeVNmBXvO3c9ANXRk7vSzqCHCdnO5er9aS2YlXbEcDhxX2Gh5sgZCdluCsBNy+6WhGzvOwQd5vXNavbKzc3F22+/jR07duDQoUP4/PPPMWrUKAwZMkQMfO677z5oNBoMHz4ce/bswZdffonZs2fLaoaqg1JJcHR/hwQESHqsBVjpvVZYVJ64rjcIlRodGyi/WzOq6g2R6cVYdhGw8EiL8u1azzdgQnbFKsrhstU8YvrATldxtFnA3u7G3t413pS3d6N2dS6ateDQ0Vws01oQs5ojJ1z9LT0KyRVMd7faLHfTOduRJd37wrDydqo2n0Sr1WLx4sXo2rUrmjZtildffRWjRo3C/PnzxWVCQ0OxatUqHD58GGlpaRgzZgwmTJhQrbrxA+U1R83rhGLCrU1kAZFWbfkrn3V3K9n7K9tbDXDu6MLSH7ZpW7m13ALT95mWic1qFbMY9Ij7unya5RGy3bNvHa45srP5ydU5Ms7m7eV1dcK4tWY72bmoEgGNaeK+S2qO3FTLqlAoZOdDpcL02WrOufy76/O4m9c3q9mrTZs22Lhxo83lWrRogT/++MMNJfIcY81RZJAGfiolAjS2v+YBretg/cFzWLLlP5QahEr3VgOMP5IbDyyt4onavO3f/CJgKbdAYdb11nLNkS/kk7ibxRwuCzVHlnJ23FXj4mg3aHubE7y9JsaUq3N6qsrV+9NasOzokAzy9Skt9Jx1oJAVbMMZNVG2tmXQlz9E2hW1Vu6qCXO3avRRyEhvMAAoP2h1fuVfs2D9ObTwu1GzUtasVrneatLtAVU/UZvWRFhbt62TIBOy7WfaNKpQQAw2bT9bTfp/1+1bWb5GJc5e9ubmeHtNjClvz5Fy9cjp9jSrOXqcKG/0hpYW2+ld+V0c0JqeK12xbfl3UH1CimpTc0TlSk0eGiqtTakgNhJPrh+tO4z8a5WvOXJmN2jTi621Z3uplAqzz2utTNLgqDr1qnAmtVIhjnNkrYeX5f3snmR3WZkqcSK2NzjyuZojF+f0VJX0K3J5QrYssJFu19HjxMJ8HxohGzA/7l0RyNjaZ76qGn0UMjLmHFk6KQgVVB0ZD3JjYARUrubImT0hzMcbsfyjtnXRk65HOs5RdepV4UzWvkNbeQXSk6JLu/K7MSHbGbUErubtNUfSfejyrvxWPn+lmtVsHF9OT8h2Y1OoeXDkvPUaeWPTrqO8/9dPlZKXfx0nL10HYPkiYE/NkVSdcH+7ty0NWqp6ojZN5LTWy8LWgGryQSB968LnCdZyh2wFoe4ab0feLGD/++xNGlXKaiUrVTSP8Pau/O4cBNLahbkyP3VbAxo6I5jx1HemUipcUmvlrs4Y7sZmtWrkeokeHaatFl9X9iJlWs26cmRnaNW2Hzpb/n7p/533I1ErlVZ7vUjv5CwNqCYth1bWrOa04lUrVnM4bCRcu6s5ytFmAfub1aQneu8/SLw9IVsawLoi2LSna3plboRs1eo445BwZ16bYPLcSbWN4M8R0u/YG2svHeX9v36ym7Q5DLBSc1RB1ZHpge3vZ39gVPZ+19xBKJXWR2G1dXFgV/7KUVsZC8pWbou7qtYdbRZwKCHbC4MNU97+6AaVG5vVrAWzjtYcWTrOnZKQ7aGxtMxyN52WkF09ewEzOKpGTA9LaRKtscda5wZRsMY0ibqySdXOzH+QBnGmNUfWaiksbVPelb882KtOP2JnstabxdYdtbxq3UWFg+n3zYRsb390g/RYcEVTtj3BcqWOExvNw87YxZ7K0Skb8duxmtcK1+umnqruxma16sTkuJQeqDmjumLjofMY0LqO1bebngwqezJzVc8ZpdJ6oqSti570M/m54InU1Y21/Wytt6Claa5sjnI0Z8Leu3VZ7pQPZO3LawI8WBAr5OcE167fWk1IZX7qljoWKCSDqZmOo+YIeXBU5dVVaruuSciunjXyDI6qkRvDG4mkwU18RADiIwIqfL/pRa0qFwdnVvGrlUqrJ0H5xdL8vdKTmbRZzRubILyBXYPqWdjR7nq+kmxIgUpd9Oy7W5ddHH2gdlGef+d9DQG2ctWqyp4bssoENO4YksKdzbWCpAtO2ZhNzr+Bra41R973ayKHlZpER5U9UE0DBr9K3upJ3+3UnCOF9RoidSV6oPlxhGybpPvT2onU0jXY1jhIzmIrSLP6PivHjCnpMeQLAbSnuoXby9Xlc/ZQBu640EsPW2fURFWGaxKyvfsYdBSDo2rEvObI8ZwhoGo1R848sSgU9o2QbWuTWiZk22Q1CLVR86J0MGipLKckZFfYld+3ml69PSHbrV35nbB+V9d0ma63onHnXEFp43fsCFlCthceg45icFSNVLnmqIoJ2VXZti3WLgLy6RUfzhwh2zZHxzly1yi5jo4RY+9FVN713PuPEXcNvukoV/fMcnathTvGIPLkceWK70OedO99x6CjGBxVI8aRsY2qXHNUyRoA6dadXb1qLVG4Mr11ZF35q1H1rzM5Y5wj93Xlt3879g5S6cyBTN3BXb0EHWWtmdZZrNVuOtpcZek4dnap3ZpzZFIxJRsXzmnBUfW86fTCnxM5Sm/yS6hs84Y0x0ihqNqdhbPvjuy7aFe8Dj9vvHp4GXnCs+V9a3FwPDf18rK3ecyUvcGbt9fEmHI0B8tdPJWQ7Whzlbub1dydc+SKBwHbOjf4Ku/7NZHDSvUmNUdVGKeossnYgPwOy9k/eqvj76jsvzgwOLLN2l2grYuG2waBdEJCdkUXPYXkKPaNmiPJ/73wwuTqZipHg2W71uei71/2IHAX5xyZrt0VCfLVtSs/rxbViMGs5sjxnCNvG+PFWi+SynQhl9+xOa1o1Yq1RwHYar501/OiHB0jxt5eTdKuzz5Rc+TlFyZ31hw546Gwzg62vI0rEuQ9NeK3qzE4qkZKnZhz5G13zdYuApW5KHvbZ/JGais1R7aODXcdO46efB3p1eQLx4u3jzFj7wN/HeWLCdme5IrP565hPNyNwVE1YpqQXZVxjiw9xNUWV1YQOzpCthTHNrJNfudcPt1WF2B3PQDVGSdfey+ivnCir0zOnae5oibO2Rd7S+cZV5423J5z5ILgyB15Wp7g5T8nqoyqBkfe1FPHtC1eaSW3ojJVutXph+sq1u4Cbe1nTzSrOXpdsbf5xReaVeQPe/bu07nLE7Kd8H15+7hRlWbaW80FgYy3D0TqKO/+NVGlOLPmyJHkZVf+LNRWuizLL8oVl7k6nOtczdpdYGXGOXJlro58AD373yctUUUncOk6fSGYtnbT4I1cEWzIa7urvn53DUlh5O5BIF2RU+VrA6fai8FRNVLVcY58JyHbSv6RjSK7uwrbF1l7Kr2t4Mhdd9zOziupiC8cL76UDOuKYMNac6+j3111vdAbueImpjJjzfkSBkfViHnNUeW+Xt9JyJZOr94nM3ezZ+BHSwGKu6rWnZJXUo2OE19KhnX1CNnSw87RGhlrY3u5iidzjpx1jq92TZE3MDiqRqraW03+0E3PJmSbrstawi+DI+eydrG1lXTpiqd9W+KMi4m3Nz9VhrcnZEt3tSsOC2d035etz0IzvcKlCQPu5fKao+r02/J0Ach5qp6Q7b3NakprtUU+1KzgC6w9ZsPWSdWbax1NVaeq/8rk3HmCtALHFbUk1gJdR7fl7nGOXD8IpMk1wQVDK0h/TtXpHOx9vyZyWJVzjqrYld9dCdnW82LsL7Ob8yB9hrW7wMo0q/ly8OFrh0V1H7TQFmsJ+g43q8mOY4eL5bVccRPja50Y7FUNv/6ay/zZao7XHPl5vCu//LX0RGX9ou3qUlV/1pPd7U/IrokXaU+p6c3Kzv7Mrh600tNc3au0Oh2DDI6qEb3BIHtd2aYxafd9b2tWsyfnqDI/9mp43nMK601psDhdnMbmTY/w9v3u6t+Zs5vVnD00gC3VYRBI6UeoTgElg6NqxPTBs1XrreZdI2RLyyPdjrUcGXKMPV2ZLZ0Aq0sNhq81t8r3uwcL4iHOrv1w9qCSnmZWA+/ikex9+bdvqgb+nKov0wfPVi3nyLsOcmuxmrWaDnKMPV3yLX0X1SU48jXenpDtTs6Ia909zpG7B4GU5xQ6f/3V6bdfs39N1YxpV/4q9VZz4ETrroRsKVvP/KLKsaeZ0tJ3weDIM6p7joy7uesZgZ7i6s4S1emnz+CoGjE4cYRsPx+sOWKzWtXZsz9t1hxVw4uKt5KNS+Vlv1l3c8antziciQt3q7tzjlx9jvSFUeXtxeCoGnFqzZGHExgqGp9DNr2adCH3FvbsT4s5R1ZGKvYaXlmoqnPFuDW+yhkNVNUu58jkNWt17eczwdGrr76KzMxMBAQEICwszOIyx44dQ79+/RAQEIBatWph7NixKC0tlS3z22+/oU2bNtBqtUhJScHChQtdX3g3MR/nqHJfr3R5b/sNycczKf+cTMh2LntqgGx15fdKduZ2mAbl3k7WrOyFZ3NPHRXOeHxIdeSKgK86jSAu5YU/J8uKi4sxcOBAPP744xbn6/V69OvXD8XFxdiwYQM++eQTLFy4EBMmTBCXOXz4MPr164fu3btj+/bteOaZZ/DQQw/h559/dtfHcKmqjpAtraL3tsPdWnWttMxef4H2AfYkuFv6LhiYeoa31274VqgpDzB9reeiPfg7tZ/a0wWw1+TJkwHAak3PqlWrsHfvXvzyyy+IiYlBq1atMHXqVDz//POYNGkSNBoN5s6di6SkJMycORMA0LhxY6xbtw5vvfUWsrKy3PVRXMbs2WqVzEHwlR+OwkrSZHW/63MHa4NA2n6fl+/7anpsKGT/r56f0RGOj3PkM/UFDuENpP2qzZGQm5uL5s2bIyYmRpyWlZWFgoIC7NmzR1ymV69esvdlZWUhNzfX6nqLiopQUFAg+/NWpgnZVck58nRiXUV3xNIqc2lqlKXgztouqI53hc6gsjHYozXyJ6I7sUBOYu8n8eUAwxubBD21Nx2NAaSxkfGY9uWbLncPFVCdVJvgKC8vTxYYARBf5+XlVbhMQUEBrl27ZnG906ZNQ2hoqPgXHx/vgtI7h1nNUaXHOSo/HDx9Onh/cBuEBfhh+l0tKlyuUWyI+P/CYr3Z/Km3NUNEoAYv9Wvs9DJWRw1jgsX/518tsft9GpUSHVMi0TI+DPUiAlxRNNFjXesjOliLR7om2/2eoZmJiAnRYninpAqXG3VTA0QFaTCyZ4OqFtMtwgL80D4pAm0TwhEdpPV0cTxiUPt6qBPmjwGtaovT5t2fhrAAP7w5sGWl1mUpEFrwYDuE+vth9r2tqlpUr9CrcS2kxgajeZ1Q56zQ0xcLF/Fos9q4cePwxhtvVLjMvn37kJqa6qYSmRs/fjxGjx4tvi4oKPDaAKmqOUdVrXGtXysIh84VVm0lN7SpF45tL99ksQYr1N9P/H+/5nF4+ottACw3IzaICcaWl3qZrceHbwZdqlfj8psHjbo8WJbuc0sUCgX+b3i6+H9XGtc3Fc/3aVSp7UQEarBxfE+b76kbHoBNL5ofL95KoVDgy0c6iP/3NrGhOpdvY9odzSEIguzzpyVEWD1/VER6zvT3UwEAOiRHYvuEyq/LHomRgU5fp1TjuBDsOVkAjaRK+IMH2gJw3vESGahxynq8jUeDozFjxiA7O7vCZZKT7bs7jI2NxV9//SWbdvr0aXGe8V/jNOkyISEh8Pf3t7herVYLrdbzd2RfbT6O/KsleLiL9f1h+uDZyrafy34sDvxuXru9OcID/HBfekLl32yrPACm39UC/569gvZJEeI0lVKBlSM7Y+H6I8jOTLRrPQCcd9dUzSiVCvwyugvm/34Ij0iOtTb1wvFY1/pIirJeK+TOi7Mj27L3Pd4YZFTEm8t7f0YCDp8rRPdGtVy6HUv7wNFjZNKtTVBwvRTxkhpQZ+/jJY9lYMnm4xjf17U12vPuT8PsX/7B8M7lNabO/izdG9XC8E5J1e6c6tHgKDo6GtHR0U5ZV0ZGBl599VWcOXMGtWqV/RBzcnIQEhKCJk2aiMusWLFC9r6cnBxkZGQ4pQyu9NzSnQCArKaxqBdp+QJV1ZojKUdyL6KDtZh+V+WqsSvj7raWa+wax4XgDRvNb0Y/PdMZ6/45h6FWAikCUmoFm32PCoUC4/p6rgaXfJNWrcKrtzf3dDEqJbtjxU2vztAuMQLtEiNsL1hFdcMDMKOSTYuVpVQq8PItTVy6DU/wmZyjY8eOYfv27Th27Bj0ej22b9+O7du348qVKwCA3r17o0mTJrj//vuxY8cO/Pzzz3jppZcwYsQIsebnsccew6FDh/Dcc89h//79+N///oevvvoKo0aN8uRHs2jlrlPImLYaW45ekCXVFVy3ngdiPs5RFYIj770ZrZLU2BA81DkZfjXxKZ1ERGQXn7lCTJgwAa1bt8bEiRNx5coVtG7dGq1bt8bmzZsBACqVCj/++CNUKhUyMjIwZMgQPPDAA5gyZYq4jqSkJCxfvhw5OTlo2bIlZs6ciQ8//NAru/E//vlWnMq/juyPN8l6/1TU+cCs5qiGP06AiIjIET4zztHChQttjmadkJBg1mxmqlu3bti2bZsTS+Zal4tKYZBERIYKoqNSg0H22lfGLSIiIvImPlNzVJMJVv5vSi+PjaqYc0RERFQzMTjyAdLaoooG9dKb1Rw5/vVW15wjIiIiWxgc+QBpPGSoMOdI/roqrWq+PFIwERFRVTA48lLGAcgA0zwj+2uOvHn8EyIiIm/F4MhLBWqlwREs/t+U6eNDiIiIqPIYHHmpAE15R8Li0vIaoYq68lfUk62yWOlEREQ1FYMjLyVtVrt0tVj8f0UJ2aV6BkdERERV5TPjHNUEFwuLMWLRVtzZpq6sFuhCYXlwVFHLmfE9GcmRGNnLsaeKB2hUuFqsRzcXPwuJiIjIWzE48iJTftyLDf+ex4Z/zyNR8vw0aXBUYc3RjcjpjjZ10CE50qEyrB3bHX+fvozM+o69n4iIyNcxOPIifx2+IP6/RNJEdlHSrKavcJyjsnnqKjw2JDpYi+hgrcPvJyIi8nXMOfIiJy5dE/9fLBm06EJh+cNmTZ+fJmWcp2TCEBERkcMYHHkJaXOZUgGUSIIjaW+1ioIjY7NaVUbGJiIiqul4FfUSZy4Xif9Pjg5CiSQgkgZKFQVHhhvzqvJMNSIiopqOwZGX2HeqQPy/n0opa1YrkYx8XdFYRqUMjoiIiKqMwZGXaJsYgRHd6wMoqwGSJmRLxy+qaBRsMSGbwREREZHDGBx5iSCtGh3rRwGQJ2MDQKmdzWp61hwRERFVGYMjL2J8UGxRiV42vUQSEDE4IiIici0GR17EGNMUlTpYcyQwOCIiIqoqBkdeRHkjqDEPjlhzRERE5C4MjryIcfDG6xU1q1XYW60sqGJwRERE5DgGR17EGNOY9kiTNqsZKhznqOxf9lYjIiJyHIMjL2LtsR/SYKmirvzGmiM+PoSIiMhxDI68iNXgqIKE7L0nCzD1x724dLUYxsWq8uBZIiKimk7t6QJQOWsVPqUVdOW/5d0/YBCAvILr0BtzjlhzRERE5DDWHHkRazVHsmermSRkG2Ol3H/P8/EhRERETsDgyIsorXwb0keJWEvIvlBYzAfPEhEROQGDIy9iT85RRQnZxiBKo+bXSkRE5CheRb2I9WY12zVHQPkz2bRqlXMLRkREVIMwOPIi1lrDjF30y/4vD44CNeaBkJY1R0RERA7jVdSLWG9Wsz5CdliAxmx5BkdERESO41XUi1htVpPUHOn18uAoPNBP9lqlVECt4tdKRETkKJ+5ir766qvIzMxEQEAAwsLCLC6jUCjM/hYvXixb5rfffkObNm2g1WqRkpKChQsXur7wdrI6zlEFNUeh/vLgiLVGREREVeMzV9Li4mIMHDgQjz/+eIXLLViwAKdOnRL/BgwYIM47fPgw+vXrh+7du2P79u145pln8NBDD+Hnn392cento7SSdCTNMzJNyFZA/h4GR0RERFXjMyNkT548GQBs1vSEhYUhNjbW4ry5c+ciKSkJM2fOBAA0btwY69atw1tvvYWsrCynltcRVhOyK+jKL0D+mj3ViIiIqqbaVTOMGDECUVFRaN++PT7++GMIkmao3Nxc9OrVS7Z8VlYWcnNzra6vqKgIBQUFsj9XsSch22A6QrZBvqzWr9p9pURERG7lMzVH9pgyZQp69OiBgIAArFq1Ck888QSuXLmCp59+GgCQl5eHmJgY2XtiYmJQUFCAa9euwd/f32yd06ZNE2utXM00OFIoAEGQJ2SX6k0fH2Jac8TgiIiIqCo8eiUdN26cxSRq6d/+/fvtXt/LL7+Mjh07onXr1nj++efx3HPPYcaMGVUq4/jx45Gfny/+HT9+vErrq4hps5rmRq+zihKyTYeEZLMaERFR1Xi05mjMmDHIzs6ucJnk5GSH15+eno6pU6eiqKgIWq0WsbGxOH36tGyZ06dPIyQkxGKtEQBotVpotVqHy1AZpjVHGrUSRaUGWZ6R3jTniDVHRERETuXR4Cg6OhrR0dEuW//27dsRHh4uBjcZGRlYsWKFbJmcnBxkZGS4rAyVYRYcWRivyDQ4Mn2aiM6PNUdERERV4TM5R8eOHcOFCxdw7Ngx6PV6bN++HQCQkpKCoKAg/PDDDzh9+jQ6dOgAnU6HnJwcvPbaa3j22WfFdTz22GN477338Nxzz2HYsGH49ddf8dVXX2H58uUe+lRyCpNYyM9CcGSWkM2aIyIiIqfymeBowoQJ+OSTT8TXrVu3BgCsWbMG3bp1g5+fH95//32MGjUKgiAgJSUFs2bNwsMPPyy+JykpCcuXL8eoUaMwe/Zs1K1bFx9++KFXdOMHzGuO/NTmvddME7JNYiP2ViMiIqoinwmOFi5cWOEYR3369EGfPn1srqdbt27Ytm2bE0vmPKYJ2fbUHJnnHLFZjYiIqCpYzeBF7Mk5Mh0E0jTniM1qREREVcMrqRcxa1azKyGbOUdERETOxCupFzFvVjPPOTJvVpPP17K3GhERUZUwOPIi9tQccYRsIiIi1+KV1IuYPlpNYyHQsVlzxOCIiIioSngl9SJlj0wpf22x5shmzhGb1YiIiKqCwZGXkTatqU2TkAAYTB8fYjKf4xwRERFVDa+kXkYaD/lZaCKzVXNkqbaJiIiI7McrqZeR1hzZ82w105wj09dERERUOQyOvIw0OLKnK7/pa73B4JqCERER1RAMjryMspIJ2aY1RaY1S0RERFQ5DI68jLzmyEJXfhs5R3rGRkRERFXC4MjLSLvyWxrnyFbNUWyIzhXFIiIiqjHUni4AySmVNnKOrNQcjb6pIYpLDejbLNa1BSQiIqrmGBx5GVvNanorI2T3SK2FZnVCXVo2IiKimoDNal7GVkK2acK1sebI9LlsRERE5BgGR16msuMcGV8q+U0SERE5BS+pXsbWOEfmCdllrxVgzREREZEzMDjyMrYeH2Lt2WoWHsNGREREDmBw5GUU0pojC21l1p6tpmDOERERkVMwOPIy0njIT23H40MMxoRslxaLiIioxmBw5GVsdeUvNQgQBAH7ThXgeole7MrPmiMiIiLn4DhHXsZWcCQIwA87T+HpL7ahXWI4c46IiIicjDVHXkYa5Fjqyg8Ai/86BgDYdOQixzkiIiJyMgZHXsZWzZHp9PKEbNeWi4iIqKZgcORlbI1zVDZdGhyV/cucIyIiIudwKDi6du0arl69Kr4+evQo3n77baxatcppBaupFDbGOQJMgibjCNmMjYiIiJzCoeDotttuw6effgoAuHTpEtLT0zFz5kzcdtttmDNnjlMLWNNIa47UViIeS81qzDkiIiJyDoeCo61bt6Jz584AgKVLlyImJgZHjx7Fp59+infeecepBaxppOMcKRUKqCwESGpJzZGYc+TykhEREdUMDgVHV69eRXBwMABg1apVuOOOO6BUKtGhQwccPXrUqQWsaaQ1QCqlAioLNULSXmzGrvzMOSIiInIOh4KjlJQULFu2DMePH8fPP/+M3r17AwDOnDmDkJAQpxawplGYBEcWniAia1YTmHNERETkVA4FRxMmTMCzzz6LxMREpKenIyMjA0BZLVLr1q2dWkAAOHLkCIYPH46kpCT4+/ujfv36mDhxIoqLi2XL7dy5E507d4ZOp0N8fDymT59utq4lS5YgNTUVOp0OzZs3x4oVK5xe3qqQ5lorFZZrjix18WfOERERkXM4NEL2XXfdhU6dOuHUqVNo2bKlOL1nz564/fbbnVY4o/3798NgMGDevHlISUnB7t278fDDD6OwsBBvvvkmAKCgoAC9e/dGr169MHfuXOzatQvDhg1DWFgYHnnkEQDAhg0bMGjQIEybNg233HILFi1ahAEDBmDr1q1o1qyZ08vtCNNmNaWFKiFLXfwZGxERETmHw48PiY2NRWxsrGxa+/btq1wgS/r06YM+ffqIr5OTk3HgwAHMmTNHDI4+//xzFBcX4+OPP4ZGo0HTpk2xfft2zJo1SwyOZs+ejT59+mDs2LEAgKlTpyInJwfvvfce5s6d65KyV5Y0OFIqYDEh29I05hwRERE5h0PNaoWFhXj55ZeRmZmJlJQUJCcny/7cIT8/HxEREeLr3NxcdOnSBRqNRpyWlZWFAwcO4OLFi+IyvXr1kq0nKysLubm5VrdTVFSEgoIC2Z8rKexoVtMbE40gXdaVpSIiIqo5HKo5euihh7B27Vrcf//9iIuLc3utxcGDB/Huu++KtUYAkJeXh6SkJNlyMTEx4rzw8HDk5eWJ06TL5OXlWd3WtGnTMHnyZCeWvmL2NKsZDJaCI0ZHREREzuBQcLRy5UosX74cHTt2rNLGx40bhzfeeKPCZfbt24fU1FTx9YkTJ9CnTx8MHDgQDz/8cJW2b4/x48dj9OjR4uuCggLEx8e7bHvS3mnWuvLrDebvY2xERETkHA4FR+Hh4bImLUeNGTMG2dnZFS4jbaY7efIkunfvjszMTMyfP1+2XGxsLE6fPi2bZnxtzI2ytoxp7pSUVquFVqu1+VmcRZ5zZHkQSL3BPDpizREREZFzOBQcTZ06FRMmTMAnn3yCgIAAhzceHR2N6Ohou5Y9ceIEunfvjrS0NCxYsABKkwGAMjIy8OKLL6KkpAR+fn4AgJycHDRq1Ajh4eHiMqtXr8Yzzzwjvi8nJ0ccisDbWBvnqNRCsxpjIyIiIudwKDiaOXMm/v33X8TExCAxMVEMRoy2bt3qlMIZnThxAt26dUNCQgLefPNNnD17VpxnrPW57777MHnyZAwfPhzPP/88du/ejdmzZ+Ott94Slx05ciS6du2KmTNnol+/fli8eDE2b95sVgvlLVQKBdQWoiODxYRsRkdERETO4FBwNGDAACcXo2I5OTk4ePAgDh48iLp168rmCTcChdDQUKxatQojRoxAWloaoqKiMGHCBLEbPwBkZmZi0aJFeOmll/DCCy+gQYMGWLZsmdeMcWRKobTcC01vqebIDeUhIiKqCSodHJWWlkKhUGDYsGFmgYqrZGdn28xNAoAWLVrgjz/+qHCZgQMHYuDAgU4qmfNJK4VUVnOOzN/HmiMiIiLnqPQ4R2q1GjNmzEBpaakrylPjCSiPjlRKhcWgx1JCNmMjIiIi53BoEMgePXpg7dq1zi4LQV5zZK23mmlCtkLBEbKJiIicxaGco759+2LcuHHYtWsX0tLSEBgYKJvfv39/pxSuJpI1qykVFh8ya5qQzbCIiIjIeRwKjp544gkAwKxZs8zmKRQK6PX6qpWKAJQlY2vU5sGRaUI2842IiIicx6HgyGAh54WcT6FQQMvgiIiIyK0cyjki15EmZAOAxkKzmmlwxNiIiIjIeRyqOZoyZUqF8ydMmOBQYUiecwRYblazlJBNREREzuFQcPTtt9/KXpeUlODw4cNQq9WoX78+g6MqMB3e0VKzmmlCNpvViIiInMeh4Gjbtm1m0woKCpCdnY3bb7+9yoWq0eypOdIzOCIiInIVp+UchYSEYPLkyXj55ZedtcoaySznyI6aI8ZGREREzuPUhOz8/Hzk5+c7c5U1jlnOkUpltoxZQrYrC0RERFTDONSs9s4778heC4KAU6dO4bPPPkPfvn2dUjAqY9c4R5aeTktEREQOcSg4euutt2SvlUoloqOjMXToUIwfP94pBaMylhKyTXurMeeIiIjIeRwKjg4fPuzsctANpr3V7Bsh24UFIiIiqmEcyjkaNmwYLl++bDa9sLAQw4YNq3KhajLBJOnInq78zDoiIiJyHoeCo08++QTXrl0zm37t2jV8+umnVS5UTcaaIyIiIs+qVLNaQUEBBEGAIAi4fPkydDqdOE+v12PFihWoVauW0wtZk5j3VuOz1YiIiNypUsFRWFgYFAoFFAoFGjZsaDZfoVBg8uTJTitcTWQ2QrafPQnZLiwQERFRDVOp4GjNmjUQBAE9evTA119/jYiICHGeRqNBQkICateu7fRC1mSWxjkymD1bjdERERGRs1QqOOratSuAst5q9erV40XZDSzmHHGEbCIiIpdxKCE7ISEB69atw5AhQ5CZmYkTJ04AAD777DOsW7fOqQWscQTbjw9hzhEREZHrOBQcff3118jKyoK/vz+2bt2KoqIiAGWPD3nttdecWsCaxqy3mh0J2YyNiIiInMeh4OiVV17B3Llz8cEHH8DPz0+c3rFjR2zdutVphauJTHur2ZeQzeiIiIjIWRwKjg4cOIAuXbqYTQ8NDcWlS5eqWqYaTTCpO7JUc2SekO3SIhEREdUoDgVHsbGxOHjwoNn0devWITk5ucqFonJ8thoREZF7ORQcPfzwwxg5ciT+/PNPKBQKnDx5Ep9//jnGjBmDxx9/3NllrFHMBoG04/EhDI2IiIicx6EHz44bNw4GgwE9e/bE1atX0aVLF2i1WowdOxYPPfSQs8tYo7G3GhERkXs5VHOkUCjw4osv4sKFC9i9ezc2btyIs2fPIjQ0FElJSc4uY41ilpCttjAIpMkyjI2IiIicp1LBUVFREcaPH4+2bduiY8eOWLFiBZo0aYI9e/agUaNGmD17NkaNGuWqstYI9jx41hRrjoiIiJynUs1qEyZMwLx589CrVy9s2LABAwcOxIMPPoiNGzdi5syZGDhwIFQWHndB9hNMB4G00FvNFGMjIiIi56lUcLRkyRJ8+umn6N+/P3bv3o0WLVqgtLQUO3bs4KNEXMRPZXu/suaIiIjIeSrVrPbff/8hLS0NANCsWTNotVqMGjXK5YHRkSNHMHz4cCQlJcHf3x/169fHxIkTUVxcLFtGoVCY/W3cuFG2riVLliA1NRU6nQ7NmzfHihUrXFr2qrJn3yoZGxERETlNpWqO9Ho9NBpN+ZvVagQFBTm9UKb2798Pg8GAefPmISUlBbt378bDDz+MwsJCvPnmm7Jlf/nlFzRt2lR8HRkZKf5/w4YNGDRoEKZNm4ZbbrkFixYtwoABA7B161Y0a9bM5Z/DHqYJ2fZgrR0REZHzKATTJJcKKJVK9O3bF1qtFgDwww8/oEePHggMDJQt98033zi3lBbMmDEDc+bMwaFDhwCU1RwlJSVh27ZtaNWqlcX33HPPPSgsLMSPP/4oTuvQoQNatWqFuXPn2rXdgoIChIaGIj8/HyEhIVX+HKb++Ocs7v/oLzzaNRnj+zYGACSOW17he1rXC8O3T3R0elmIiIiqi8pcvytVczR06FDZ6yFDhlS+dE6Sn5+PiIgIs+n9+/fH9evX0bBhQzz33HPo37+/OC83NxejR4+WLZ+VlYVly5a5urh269wgGnsmZyFQW/7VZGcmYuOh87hSVIr/Ll4zew/rjYiIiJynUsHRggULXFWOSjl48CDeffddWZNaUFAQZs6ciY4dO0KpVOLrr7/GgAEDsGzZMjFAysvLQ0xMjGxdMTExyMvLs7qtoqIiFBUVia8LCgqc/GnMSQMjAJjUv6yZ8KZZay0u70BLHBEREVnh0CCQzjJu3DiLSdTSv/3798vec+LECfTp0wcDBw7Eww8/LE6PiorC6NGjkZ6ejnbt2uH111/HkCFDMGPGjCqVcdq0aQgNDRX/4uPjq7S+qrCWWmQ6KCQRERE5zqHHhzjLmDFjkJ2dXeEy0gfZnjx5Et27d0dmZibmz59vc/3p6enIyckRX8fGxuL06dOyZU6fPo3Y2Fir6xg/frysKa6goMBjAZLCSgNaJdLGiIiIyAaPBkfR0dGIjo62a9kTJ06ge/fuSEtLw4IFC6BU2q702r59O+Li4sTXGRkZWL16NZ555hlxWk5ODjIyMqyuQ6vVignonma95ojBERERkbN4NDiy14kTJ9CtWzckJCTgzTffxNmzZ8V5xlqfTz75BBqNBq1btwZQ1mPu448/xocffiguO3LkSHTt2hUzZ85Ev379sHjxYmzevNmuWihvYK3LPmMjIiIi5/GJ4CgnJwcHDx7EwYMHUbduXdk8aZPS1KlTcfToUajVaqSmpuLLL7/EXXfdJc7PzMzEokWL8NJLL+GFF15AgwYNsGzZMq8Z48gWa73SmHNERETkPJUa54hcP85RRfq98wf2nDTvLZcaG4yfnuni1rIQERH5kspcvz3aW40qhzlHRERErsfgyIdY763m5oIQERFVYwyOfIi1B8yy5oiIiMh5GBz5EvZWIyIicjkGRz7Eem81RkdERETOwuDIh1hLyGZoRERE5DwMjnwIa46IiIhcj8GRD1FaqToyGNxcECIiomqMwZEPsdqsxpojIiIip2Fw5EOsjnPk5nIQERFVZwyOfAnHOSIiInI5Bkc+hA+eJSIicj0GRz6EOUdERESux+DIh1jrrcbYiIiIyHkYHPkQazVHzDkiIiJyHgZHPsRabzXmHBERETkPgyMfwpojIiIi12NwVB0wNiIiInIaBkc+xOrjQ1hzRERE5DQMjnyI9WY195aDiIioOmNw5EOksZFS8oI1R0RERM7D4MiHKCRVR9ImNoZGREREzsPgyIfIa44kwRFrjoiIiJyGwZEPkeYcKWTNau4vCxERUXXF4MiHSJvVVJKkI+YcEREROQ+DIx9ivVnN/WUhIiKqrhgc+RBrzWpERETkPAyOfIj02WrWBoQkIiKiqmFw5EOk8ZA054iIiIich8GRD1HKxjkqn85AiYiIyHkYHPkSWc6RAgsebIf4CH8seijdc2UiIiKqZtSeLgDZz/TxId0b1cIfz/XwWHmIiIiqI5+pOerfvz/q1asHnU6HuLg43H///Th58qRsmZ07d6Jz587Q6XSIj4/H9OnTzdazZMkSpKamQqfToXnz5lixYoW7PkKVycY5YkI2ERGRS/hMcNS9e3d89dVXOHDgAL7++mv8+++/uOuuu8T5BQUF6N27NxISErBlyxbMmDEDkyZNwvz588VlNmzYgEGDBmH48OHYtm0bBgwYgAEDBmD37t2e+EiVJg2HFAyOiIiIXEIh+OiDub7//nsMGDAARUVF8PPzw5w5c/Diiy8iLy8PGo0GADBu3DgsW7YM+/fvBwDcc889KCwsxI8//iiup0OHDmjVqhXmzp1r13YLCgoQGhqK/Px8hISEOP+DVeCZxduwbHtZbVl8hD+b1IiIiOxUmeu3z9QcSV24cAGff/45MjMz4efnBwDIzc1Fly5dxMAIALKysnDgwAFcvHhRXKZXr16ydWVlZSE3N9fqtoqKilBQUCD78xSFguMcERERuZpPBUfPP/88AgMDERkZiWPHjuG7774T5+Xl5SEmJka2vPF1Xl5ehcsY51sybdo0hIaGin/x8fHO+jiVJg2HmHNERETkGh4NjsaNGweFQlHhn7FJDADGjh2Lbdu2YdWqVVCpVHjggQfg6lbB8ePHIz8/X/w7fvy4S7dXIT4+hIiIyOU82pV/zJgxyM7OrnCZ5ORk8f9RUVGIiopCw4YN0bhxY8THx2Pjxo3IyMhAbGwsTp8+LXuv8XVsbKz4r6VljPMt0Wq10Gq1lflYLsPHhxAREbmeR4Oj6OhoREdHO/Reg8EAoCwnCAAyMjLw4osvoqSkRMxDysnJQaNGjRAeHi4us3r1ajzzzDPienJycpCRkVGFT+E+0niIwREREZFr+ETO0Z9//on33nsP27dvx9GjR/Hrr79i0KBBqF+/vhjY3HfffdBoNBg+fDj27NmDL7/8ErNnz8bo0aPF9YwcORI//fQTZs6cif3792PSpEnYvHkznnzySU99tEqRPiVEyUeGEBERuYRPBEcBAQH45ptv0LNnTzRq1AjDhw9HixYtsHbtWrHJKzQ0FKtWrcLhw4eRlpaGMWPGYMKECXjkkUfE9WRmZmLRokWYP38+WrZsiaVLl2LZsmVo1qyZpz5apUib1RgaERERuYbPjnPkKZ4c52jc1zuxeFNZQnjzOqH44alObt0+ERGRr6r24xzVVAo2qxEREbkcgyOfIu2t5sFiEBERVWMMjnyINCDiIJBERESuweDIh7ArPxERkesxOPIhskEg+c0RERG5BC+xPoQ1R0RERK7H4MiHyB48y4xsIiIil2Bw5EMUktoiBWuOiIiIXILBkQ9RyHqrea4cRERE1RmDIx8iS8hmzREREZFLMDjyIRwhm4iIyPUYHPkQWUI2a46IiIhcgsGRD5HXHHmuHERERNUZL7E+RJpnxJwjIiIi12Bw5Es4CCQREZHLMTjyIdLeahwEkoiIyDUYHPkQaWURK46IiIhcg8GRD2FvNSIiItdjcORD+OBZIiIi12Nw5ENkvdWYc0REROQSDI58iDQcYmxERETkGgyOfImCvdWIiIhcjcGRD5HXHDE4IiIicgUGRz6ECdlERESux+DIh8gfH+LBghAREVVjDI58iGycI0ZHRERELsHgyIfImtUYHBEREbkEgyMfomCzGhERkcsxOPJRfHwIERGRazA48iHShGwFgyMiIiKXYHDkQ6TxEBOyiYiIXMNngqP+/fujXr160Ol0iIuLw/3334+TJ0+K848cOQKFQmH2t3HjRtl6lixZgtTUVOh0OjRv3hwrVqxw90dxGB8fQkRE5Ho+Exx1794dX331FQ4cOICvv/4a//77L+666y6z5X755RecOnVK/EtLSxPnbdiwAYMGDcLw4cOxbds2DBgwAAMGDMDu3bvd+VEcxt5qRERErqf2dAHsNWrUKPH/CQkJGDduHAYMGICSkhL4+fmJ8yIjIxEbG2txHbNnz0afPn0wduxYAMDUqVORk5OD9957D3PnznXtB3ACBaS91RgcERERuYLP1BxJXbhwAZ9//jkyMzNlgRFQ1vxWq1YtdOrUCd9//71sXm5uLnr16iWblpWVhdzcXKvbKioqQkFBgezPU2Q5RwyOiIiIXMKngqPnn38egYGBiIyMxLFjx/Ddd9+J84KCgjBz5kwsWbIEy5cvR6dOnTBgwABZgJSXl4eYmBjZOmNiYpCXl2d1m9OmTUNoaKj4Fx8f7/wPZieFrLeax4pBRERUrXk0OBo3bpzFJGrp3/79+8Xlx44di23btmHVqlVQqVR44IEHIAgCACAqKgqjR49Geno62rVrh9dffx1DhgzBjBkzqlTG8ePHIz8/X/w7fvx4ldZXFXx8CBERket5NOdozJgxyM7OrnCZ5ORk8f9RUVGIiopCw4YN0bhxY8THx2Pjxo3IyMiw+N709HTk5OSIr2NjY3H69GnZMqdPn7aaowQAWq0WWq3Wjk/jerKEbFYdERERuYRHg6Po6GhER0c79F6DwQCgLCfImu3btyMuLk58nZGRgdWrV+OZZ54Rp+Xk5FgNrryNrCs/a46IiIhcwid6q/3555/YtGkTOnXqhPDwcPz77794+eWXUb9+fTGw+eSTT6DRaNC6dWsAwDfffIOPP/4YH374obiekSNHomvXrpg5cyb69euHxYsXY/PmzZg/f75HPldl8dlqRERErucTwVFAQAC++eYbTJw4EYWFhYiLi0OfPn3w0ksvyZq8pk6diqNHj0KtViM1NRVffvmlbCykzMxMLFq0CC+99BJeeOEFNGjQAMuWLUOzZs088bEqTcneakRERC6nEIwZzWSXgoIChIaGIj8/HyEhIW7d9mcbj+LlZWUDVk6/qwXubuu5nnNERES+pDLXb5/qyl/TyR8fwpojIiIiV2Bw5EPkD571XDmIiIiqM15ifQgfH0JEROR6DI58CMc5IiIicj0GRz5EyeCIiIjI5Rgc+RBpsxpzjoiIiFyDl1hfIqksUrDmiIiIyCUYHPkQ2YNnGRwRERG5BIMjHyJ7fAi/OSIiIpfgJdaHMCGbiIjI9Rgc+RB25SciInI9Bkc+RN5bjcERERGRKzA48iEKheX/ExERkfMwOPJR7K1GRETkGgyOfIi0txqb1YiIiFyDwZEPUXIQSCIiIpdjcORDmJBNRETkegyOfIi8K7/nykFERFSdMTjyIdJ4iOMcERERuQaDIx/CQSCJiIhcj8GRD2FvNSIiItdjcORD5M1qHisGERFRtcbgyIdIa46UjI6IiIhcgsGRD2FCNhERkesxOPIh0niIjw8hIiJyDQZHPkRaW8TYiIiIyDUYHPkSac0Rc46IiIhcgsGRD2HOERERkesxOPIh8t5qHiwIERFRNcZLrI9iQjYREZFrMDjyIYIgiP9nsxoREZFr+FxwVFRUhFatWkGhUGD79u2yeTt37kTnzp2h0+kQHx+P6dOnm71/yZIlSE1NhU6nQ/PmzbFixQo3lbzqBMn/OQgkERGRa/hccPTcc8+hdu3aZtMLCgrQu3dvJCQkYMuWLZgxYwYmTZqE+fPni8ts2LABgwYNwvDhw7Ft2zYMGDAAAwYMwO7du935ERwniY4YGxEREbmGTwVHK1euxKpVq/Dmm2+azfv8889RXFyMjz/+GE2bNsW9996Lp59+GrNmzRKXmT17Nvr06YOxY8eicePGmDp1Ktq0aYP33nvPnR/DYQZJsxq78hMREbmGzwRHp0+fxsMPP4zPPvsMAQEBZvNzc3PRpUsXaDQacVpWVhYOHDiAixcvisv06tVL9r6srCzk5uZa3W5RUREKCgpkf54iyGqOGBwRERG5gk8ER4IgIDs7G4899hjatm1rcZm8vDzExMTIphlf5+XlVbiMcb4l06ZNQ2hoqPgXHx9flY9SJQYmZBMREbmcR4OjcePGQaFQVPi3f/9+vPvuu7h8+TLGjx/v9jKOHz8e+fn54t/x48fdXgYjWUI2YyMiIiKXUHty42PGjEF2dnaFyyQnJ+PXX39Fbm4utFqtbF7btm0xePBgfPLJJ4iNjcXp06dl842vY2NjxX8tLWOcb4lWqzXbrqdIm9WYc0REROQaHg2OoqOjER0dbXO5d955B6+88or4+uTJk8jKysKXX36J9PR0AEBGRgZefPFFlJSUwM/PDwCQk5ODRo0aITw8XFxm9erVeOaZZ8R15eTkICMjw4mfypXKoyMFm9WIiIhcwqPBkb3q1asnex0UFAQAqF+/PurWrQsAuO+++zB58mQMHz4czz//PHbv3o3Zs2fjrbfeEt83cuRIdO3aFTNnzkS/fv2wePFibN68Wdbd35sZBNvLEBERUdX4REK2PUJDQ7Fq1SocPnwYaWlpGDNmDCZMmIBHHnlEXCYzMxOLFi3C/Pnz0bJlSyxduhTLli1Ds2bNPFhy+wkMjoiIiFzOJ2qOTCUmJsoepWHUokUL/PHHHxW+d+DAgRg4cKCriuZSBkZHRERELldtao5qAoZGRERErsfgyIdYqi0jIiIi52Jw5EMYGxEREbkegyMfIrBhjYiIyOUYHPkQg8HTJSAiIqr+GBz5ELWKAz8SERG5mk925a+psprGokXdULRNiPB0UYiIiKotBkc+ROenwvdPdvJ0MYiIiKo1NqsRERERSTA4IiIiIpJgcEREREQkweCIiIiISILBEREREZEEgyMiIiIiCQZHRERERBIMjoiIiIgkGBwRERERSTA4IiIiIpJgcEREREQkweCIiIiISILBEREREZEEgyMiIiIiCbWnC+BrBEEAABQUFHi4JERERGQv43XbeB2vCIOjSrp8+TIAID4+3sMlISIiosq6fPkyQkNDK1xGIdgTQpHIYDDg5MmTCA4OhkKhcOq6CwoKEB8fj+PHjyMkJMSp66Zy3M/uw33tHtzP7sH97D6u2NeCIODy5cuoXbs2lMqKs4pYc1RJSqUSdevWdek2QkJC+MNzA+5n9+G+dg/uZ/fgfnYfZ+9rWzVGRkzIJiIiIpJgcEREREQkweDIi2i1WkycOBFardbTRanWuJ/dh/vaPbif3YP72X08va+ZkE1EREQkwZojIiIiIgkGR0REREQSDI6IiIiIJBgcEREREUkwOPIS77//PhITE6HT6ZCeno6//vrL00XyOb///jtuvfVW1K5dGwqFAsuWLZPNFwQBEyZMQFxcHPz9/dGrVy/8888/smUuXLiAwYMHIyQkBGFhYRg+fDiuXLnixk/h3aZNm4Z27dohODgYtWrVwoABA3DgwAHZMtevX8eIESMQGRmJoKAg3HnnnTh9+rRsmWPHjqFfv34ICAhArVq1MHbsWJSWlrrzo3i9OXPmoEWLFuIgeBkZGVi5cqU4n/vZNV5//XUoFAo888wz4jTua+eYNGkSFAqF7C81NVWc7037mcGRF/jyyy8xevRoTJw4EVu3bkXLli2RlZWFM2fOeLpoPqWwsBAtW7bE+++/b3H+9OnT8c4772Du3Ln4888/ERgYiKysLFy/fl1cZvDgwdizZw9ycnLw448/4vfff8cjjzziro/g9dauXYsRI0Zg48aNyMnJQUlJCXr37o3CwkJxmVGjRuGHH37AkiVLsHbtWpw8eRJ33HGHOF+v16Nfv34oLi7Ghg0b8Mknn2DhwoWYMGGCJz6S16pbty5ef/11bNmyBZs3b0aPHj1w2223Yc+ePQC4n11h06ZNmDdvHlq0aCGbzn3tPE2bNsWpU6fEv3Xr1onzvGo/C+Rx7du3F0aMGCG+1uv1Qu3atYVp06Z5sFS+DYDw7bffiq8NBoMQGxsrzJgxQ5x26dIlQavVCl988YUgCIKwd+9eAYCwadMmcZmVK1cKCoVCOHHihNvK7kvOnDkjABDWrl0rCELZPvXz8xOWLFkiLrNv3z4BgJCbmysIgiCsWLFCUCqVQl5enrjMnDlzhJCQEKGoqMi9H8DHhIeHCx9++CH3swtcvnxZaNCggZCTkyN07dpVGDlypCAIPKadaeLEiULLli0tzvO2/cyaIw8rLi7Gli1b0KtXL3GaUqlEr169kJub68GSVS+HDx9GXl6ebD+HhoYiPT1d3M+5ubkICwtD27ZtxWV69eoFpVKJP//80+1l9gX5+fkAgIiICADAli1bUFJSItvPqampqFevnmw/N2/eHDExMeIyWVlZKCgoEGtFSE6v12Px4sUoLCxERkYG97MLjBgxAv369ZPtU4DHtLP9888/qF27NpKTkzF48GAcO3YMgPftZz541sPOnTsHvV4v+7IBICYmBvv37/dQqaqfvLw8ALC4n43z8vLyUKtWLdl8tVqNiIgIcRkqZzAY8Mwzz6Bjx45o1qwZgLJ9qNFoEBYWJlvWdD9b+h6M86jcrl27kJGRgevXryMoKAjffvstmjRpgu3bt3M/O9HixYuxdetWbNq0yWwej2nnSU9Px8KFC9GoUSOcOnUKkydPRufOnbF7926v288MjojIISNGjMDu3btlOQPkXI0aNcL27duRn5+PpUuXYujQoVi7dq2ni1WtHD9+HCNHjkROTg50Op2ni1Ot9e3bV/x/ixYtkJ6ejoSEBHz11Vfw9/f3YMnMsVnNw6KioqBSqcwy8k+fPo3Y2FgPlar6Me7LivZzbGysWRJ8aWkpLly4wO/CxJNPPokff/wRa9asQd26dcXpsbGxKC4uxqVLl2TLm+5nS9+DcR6V02g0SElJQVpaGqZNm4aWLVti9uzZ3M9OtGXLFpw5cwZt2rSBWq2GWq3G2rVr8c4770CtViMmJob72kXCwsLQsGFDHDx40OuOaQZHHqbRaJCWlobVq1eL0wwGA1avXo2MjAwPlqx6SUpKQmxsrGw/FxQU4M8//xT3c0ZGBi5duoQtW7aIy/z6668wGAxIT093e5m9kSAIePLJJ/Htt9/i119/RVJSkmx+Wloa/Pz8ZPv5wIEDOHbsmGw/79q1SxaI5uTkICQkBE2aNHHPB/FRBoMBRUVF3M9O1LNnT+zatQvbt28X/9q2bYvBgweL/+e+do0rV67g33//RVxcnPcd005N7yaHLF68WNBqtcLChQuFvXv3Co888ogQFhYmy8gn2y5fvixs27ZN2LZtmwBAmDVrlrBt2zbh6NGjgiAIwuuvvy6EhYUJ3333nbBz507htttuE5KSkoRr166J6+jTp4/QunVr4c8//xTWrVsnNGjQQBg0aJCnPpLXefzxx4XQ0FDht99+E06dOiX+Xb16VVzmscceE+rVqyf8+uuvwubNm4WMjAwhIyNDnF9aWio0a9ZM6N27t7B9+3bhp59+EqKjo4Xx48d74iN5rXHjxglr164VDh8+LOzcuVMYN26coFAohFWrVgmCwP3sStLeaoLAfe0sY8aMEX777Tfh8OHDwvr164VevXoJUVFRwpkzZwRB8K79zODIS7z77rtCvXr1BI1GI7Rv317YuHGjp4vkc9asWSMAMPsbOnSoIAhl3flffvllISYmRtBqtULPnj2FAwcOyNZx/vx5YdCgQUJQUJAQEhIiPPjgg8Lly5c98Gm8k6X9C0BYsGCBuMy1a9eEJ554QggPDxcCAgKE22+/XTh16pRsPUeOHBH69u0r+Pv7C1FRUcKYMWOEkpISN38a7zZs2DAhISFB0Gg0QnR0tNCzZ08xMBIE7mdXMg2OuK+d45577hHi4uIEjUYj1KlTR7jnnnuEgwcPivO9aT8rBEEQnFsXRUREROS7mHNEREREJMHgiIiIiEiCwRERERGRBIMjIiIiIgkGR0REREQSDI6IiIiIJBgcEREREUkwOCKiauvIkSNQKBTYvn27y7aRnZ2NAQMGuGz9ROR+DI6IyGtlZ2dDoVCY/fXp08eu98fHx+PUqVNo1qyZi0tKRNWJ2tMFICKqSJ8+fbBgwQLZNK1Wa9d7VSoVn4pORJXGmiMi8mparRaxsbGyv/DwcACAQqHAnDlz0LdvX/j7+yM5ORlLly4V32varHbx4kUMHjwY0dHR8Pf3R4MGDWSB165du9CjRw/4+/sjMjISjzzyCK5cuSLO1+v1GD16NMLCwhAZGYnnnnsOpk9gMhgMmDZtGpKSkuDv74+WLVvKymSrDETkeQyOiMinvfzyy7jzzjuxY8cODB48GPfeey/27dtnddm9e/di5cqV2LdvH+bMmYOoqCgAQGFhIbKyshAeHo5NmzZhyZIl+OWXX/Dkk0+K7585cyYWLlyIjz/+GOvWrcOFCxfw7bffyrYxbdo0fPrpp5g7dy727NmDUaNGYciQIVi7dq3NMhCRl3D6o2yJiJxk6NChgkqlEgIDA2V/r776qiAIggBAeOyxx2TvSU9PFx5//HFBEATh8OHDAgBh27ZtgiAIwq233io8+OCDFrc1f/58ITw8XLhy5Yo4bfny5YJSqRTy8vIEQRCEuLg4Yfr06eL8kpISoW7dusJtt90mCIIgXL9+XQgICBA2bNggW/fw4cOFQYMG2SwDEXkH5hwRkVfr3r075syZI5sWEREh/j8jI0M2LyMjw2rvtMcffxx33nkntm7dit69e2PAgAHIzMwEAOzbtw8tW7ZEYGCguHzHjh1hMBhw4MAB6HQ6nDp1Cunp6eJ8tVqNtm3bik1rBw8exNWrV3HTTTfJtltcXIzWrVvbLAMReQcGR0Tk1QIDA5GSkuKUdfXt2xdHjx7FihUrkJOTg549e2LEiBF48803nbJ+Y37S8uXLUadOHdk8YxK5q8tARFXHnCMi8mkbN240e924cWOry0dHR2Po0KH4v//7P7z99tuYP38+AKBx48bYsWMHCgsLxWXXr18PpVKJRo0aITQ0FHFxcfjzzz/F+aWlpdiyZYv4ukmTJtBqtTh27BhSUlJkf/Hx8TbLQETegTVHROTVioqKkJeXJ5umVqvFJOYlS5agbdu26NSpEz7//HP89ddf+Oijjyyua8KECUhLS0PTpk1RVFSEH3/8UQykBg8ejIkTJ2Lo0KGYNGkSzp49i6eeegr3338/YmJiAAAjR47E66+/jgYNGiA1NRWzZs3CpUuXxPUHBwfj2WefxahRo2AwGNCpUyfk5+dj/fr1CAkJwdChQyssAxF5BwZHROTVfvrpJ8TFxcmmNWrUCPv37wcATJ48GYsXL8YTTzyBuLg4fPHFF2jSpInFdWk0GowfPx5HjhyBv78/OnfujMWLFwMAAgIC8PPPP2PkyJFo164dAgICcOedd2LWrFni+8eMGYNTp05h6NChUCqVGDZsGG6//Xbk5+eLy0ydOhXR0dGYNm0aDh06hLCwMLRp0wYvvPCCzTIQkXdQCILJIB1ERD5CoVDg22+/5eM7iMipmHNEREREJMHgiIiIiEiCOUdE5LOYFUBErsCaIyIiIiIJBkdEREREEgyOiIiIiCQYHBERERFJMDgiIiIikmBwRERERCTB4IiIiIhIgsERERERkQSDIyIiIiKJ/wczjcwqaPUrdgAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "class nstep_Sarsa:\n",
    "    \"\"\" n步Sarsa算法 \"\"\"\n",
    "    def __init__(self, n, ncol, nrow, epsilon, alpha, gamma, n_action=4):\n",
    "        self.Q_table = np.zeros([nrow * ncol, n_action])  ## 实例化Q(s, a)表格\n",
    "        self.n_action = n_action   ## 动作\n",
    "        self.alpha = alpha         ## 给定α\n",
    "        self.gamma = gamma         ## 给定γ\n",
    "        self.epsilon = epsilon     ## 给定ε\n",
    "        self.n = n  # 采用n步Sarsa算法\n",
    "        self.state_list = []  # 保存之前的状态\n",
    "        self.action_list = []  # 保存之前的动作\n",
    "        self.reward_list = []  # 保存之前的奖励\n",
    "\n",
    "    ## 获取当前采取的行动，采取了ε-贪婪策略\n",
    "    def take_action(self, state):  # 选取下一步的操作,具体实现为epsilon-贪婪\n",
    "        if np.random.random() < self.epsilon:           ##  随机选择一个动作\n",
    "            action = np.random.randint(self.n_action)\n",
    "        else:\n",
    "            action = np.argmax(self.Q_table[state])     ##  拿到动作价值最大的动作\n",
    "        return action\n",
    "\n",
    "    ## 拿到每个状态最优的动作，最优动作标记1，其他的动作标记0\n",
    "    def best_action(self, state):  # 用于打印策略\n",
    "        Q_max = np.max(self.Q_table[state])\n",
    "        a = [0 for _ in range(self.n_action)]\n",
    "        for i in range(self.n_action):\n",
    "            if self.Q_table[state, i] == Q_max:\n",
    "                a[i] = 1\n",
    "        return a\n",
    "\n",
    "    ## 增量更新动作价值函数，对应相应的公式\n",
    "    ## s0, a0是当前时间步的\n",
    "    ## r, s1, a1是下一个时间步的，r是奖励，s1是状态，a1是动作\n",
    "    def update(self, s0, a0, r, s1, a1, done):\n",
    "        self.state_list.append(s0)   ##  当前状态s0加入到状态列表的\n",
    "        self.action_list.append(a0)  ##  当前动作a0加入到动作列表的\n",
    "        self.reward_list.append(r)   ##  当前状态采取的动作奖励，加入到奖励列表的\n",
    "        if len(self.state_list) == self.n:  # 若保存的数据可以进行n步更新\n",
    "            ## 拿到下一个时间步(s1, a1)对应的动作价值函数\n",
    "            G = self.Q_table[s1, a1]  # 得到Q(s_{t+n}, a_{t+n})\n",
    "            ## 逆序遍历奖励列表，算多步Sarsa algorithm公式括号内的非负部分\n",
    "            for i in reversed(range(self.n)):\n",
    "                G = self.gamma * G + self.reward_list[i]  # 不断向前计算每一步的回报\n",
    "                # 如果到达终止状态,最后几步虽然长度不够n步,也将其进行更新\n",
    "                if done and i > 0:\n",
    "                    s = self.state_list[i] ## 拿出对应的状态\n",
    "                    a = self.action_list[i]  ## 对应的动作\n",
    "                    ## 多步sarsa，增量更新动作价值函数\n",
    "                    self.Q_table[s, a] += self.alpha * (G - self.Q_table[s, a])\n",
    "            ## 时间步往后移动，最开始的时间步内容需要删除才可以，状态、动作、奖励都需要删除\n",
    "            ## 需要删除的时间步，也是需要更新的时间步，所以需要使用变量s, a来保存相应的内容以便使用\n",
    "            s = self.state_list.pop(0)  # 将需要更新的状态动作从列表中删除,下次不必更新\n",
    "            a = self.action_list.pop(0)\n",
    "            self.reward_list.pop(0)\n",
    "            # n步Sarsa的主要更新步骤\n",
    "            self.Q_table[s, a] += self.alpha * (G - self.Q_table[s, a])  ## 增量更新动作价值函数\n",
    "        if done:  # 如果到达终止状态,即将开始下一条序列,则将列表全清空\n",
    "            self.state_list = []\n",
    "            self.action_list = []\n",
    "            self.reward_list = []\n",
    "\n",
    "\n",
    "np.random.seed(0)\n",
    "n_step = 5  # 5步Sarsa算法\n",
    "alpha = 0.1\n",
    "epsilon = 0.1\n",
    "gamma = 0.9\n",
    "agent = nstep_Sarsa(n_step, ncol, nrow, epsilon, alpha, gamma)\n",
    "num_episodes = 500  # 智能体在环境中运行的序列的数量\n",
    "\n",
    "return_list = []  # 记录每一条序列的回报\n",
    "for i in range(10):  # 显示10个进度条\n",
    "    #tqdm的进度条功能\n",
    "    with tqdm(total=int(num_episodes / 10), desc='Iteration %d' % i) as pbar:\n",
    "        for i_episode in range(int(num_episodes / 10)):  # 每个进度条的序列数\n",
    "            episode_return = 0\n",
    "            state = env.reset()\n",
    "            action = agent.take_action(state)\n",
    "            done = False\n",
    "            while not done:\n",
    "                next_state, reward, done = env.step(action)\n",
    "                next_action = agent.take_action(next_state)\n",
    "                episode_return += reward  # 这里回报的计算不进行折扣因子衰减\n",
    "                agent.update(state, action, reward, next_state, next_action,\n",
    "                             done)\n",
    "                state = next_state\n",
    "                action = next_action\n",
    "            return_list.append(episode_return)\n",
    "            if (i_episode + 1) % 10 == 0:  # 每10条序列打印一下这10条序列的平均回报\n",
    "                pbar.set_postfix({\n",
    "                    'episode':\n",
    "                    '%d' % (num_episodes / 10 * i + i_episode + 1),\n",
    "                    'return':\n",
    "                    '%.3f' % np.mean(return_list[-10:])\n",
    "                })\n",
    "            pbar.update(1)\n",
    "\n",
    "episodes_list = list(range(len(return_list)))\n",
    "plt.plot(episodes_list, return_list)\n",
    "plt.xlabel('Episodes')\n",
    "plt.ylabel('Returns')\n",
    "plt.title('5-step Sarsa on {}'.format('Cliff Walking'))\n",
    "plt.show()\n",
    "\n",
    "# Iteration 0: 100%|██████████| 50/50 [00:00<00:00, 937.03it/s, episode=50,\n",
    "# return=-26.500]\n",
    "# Iteration 1: 100%|██████████| 50/50 [00:00<00:00, 2955.94it/s, episode=100,\n",
    "# return=-35.200]\n",
    "# Iteration 2: 100%|██████████| 50/50 [00:00<00:00, 2978.95it/s, episode=150,\n",
    "# return=-20.100]\n",
    "# Iteration 3: 100%|██████████| 50/50 [00:00<00:00, 3062.61it/s, episode=200,\n",
    "# return=-27.200]\n",
    "# Iteration 4: 100%|██████████| 50/50 [00:00<00:00, 3172.36it/s, episode=250,\n",
    "# return=-19.300]\n",
    "# Iteration 5: 100%|██████████| 50/50 [00:00<00:00, 3123.41it/s, episode=300,\n",
    "# return=-27.400]\n",
    "# Iteration 6: 100%|██████████| 50/50 [00:00<00:00, 2875.33it/s, episode=350,\n",
    "# return=-28.000]\n",
    "# Iteration 7: 100%|██████████| 50/50 [00:00<00:00, 2262.18it/s, episode=400,\n",
    "# return=-36.500]\n",
    "# Iteration 8: 100%|██████████| 50/50 [00:00<00:00, 3100.00it/s, episode=450,\n",
    "# return=-27.000]\n",
    "# Iteration 9: 100%|██████████| 50/50 [00:00<00:00, 3107.54it/s, episode=500,\n",
    "# return=-19.100]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "executionInfo": {
     "elapsed": 541,
     "status": "ok",
     "timestamp": 1649954998993,
     "user": {
      "displayName": "Sam Lu",
      "userId": "15789059763790170725"
     },
     "user_tz": -480
    },
    "id": "EAxG4OS6-taA",
    "outputId": "f7187b7a-de76-496e-8225-9bbf1ac445f7"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "5步Sarsa算法最终收敛得到的策略为：\n",
      "ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ovoo \n",
      "^ooo ^ooo ^ooo oo<o ^ooo ^ooo ^ooo ^ooo ooo> ooo> ^ooo ovoo \n",
      "ooo> ^ooo ^ooo ^ooo ^ooo ^ooo ^ooo ooo> ooo> ^ooo ooo> ovoo \n",
      "^ooo **** **** **** **** **** **** **** **** **** **** EEEE \n"
     ]
    }
   ],
   "source": [
    "action_meaning = ['^', 'v', '<', '>']\n",
    "print('5步Sarsa算法最终收敛得到的策略为：')\n",
    "print_agent(agent, env, action_meaning, list(range(37, 47)), [47])\n",
    "\n",
    "# 5步Sarsa算法最终收敛得到的策略为：\n",
    "# ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ovoo\n",
    "# ^ooo ^ooo ^ooo oo<o ^ooo ^ooo ^ooo ^ooo ooo> ooo> ^ooo ovoo\n",
    "# ooo> ^ooo ^ooo ^ooo ^ooo ^ooo ^ooo ooo> ooo> ^ooo ooo> ovoo\n",
    "# ^ooo **** **** **** **** **** **** **** **** **** **** EEEE"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 555
    },
    "executionInfo": {
     "elapsed": 1764,
     "status": "ok",
     "timestamp": 1649955002573,
     "user": {
      "displayName": "Sam Lu",
      "userId": "15789059763790170725"
     },
     "user_tz": -480
    },
    "id": "jgg5kRgg-taB",
    "outputId": "ec4a5456-d8cc-46ff-d127-54bd4e16e156"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Iteration 0: 100%|███████████████████████████████████████| 50/50 [00:00<00:00, 588.25it/s, episode=50, return=-105.700]\n",
      "Iteration 1: 100%|███████████████████████████████████████| 50/50 [00:00<00:00, 926.00it/s, episode=100, return=-70.900]\n",
      "Iteration 2: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1162.82it/s, episode=150, return=-56.500]\n",
      "Iteration 3: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1562.51it/s, episode=200, return=-46.500]\n",
      "Iteration 4: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1510.34it/s, episode=250, return=-40.800]\n",
      "Iteration 5: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1724.01it/s, episode=300, return=-20.400]\n",
      "Iteration 6: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 1999.84it/s, episode=350, return=-45.700]\n",
      "Iteration 7: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2272.92it/s, episode=400, return=-32.800]\n",
      "Iteration 8: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2431.90it/s, episode=450, return=-22.700]\n",
      "Iteration 9: 100%|██████████████████████████████████████| 50/50 [00:00<00:00, 2380.91it/s, episode=500, return=-61.700]\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkcAAAHHCAYAAAC1G/yyAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAADHw0lEQVR4nOydd5gURf7G356ZTYRdcpIsCoKCioqAKCgHep7pPP2dp56Y45n1DCeGU/GMp55nOAOmM+udnhEVVBQjSVBQlCQ57i6wcaZ/f8x2T1V1VXV1T8/uwH4/zwM7011dXdPT0/32N5Vl27YNgiAIgiAIAgAQa+oBEARBEARB5BMkjgiCIAiCIBhIHBEEQRAEQTCQOCIIgiAIgmAgcUQQBEEQBMFA4oggCIIgCIKBxBFBEARBEAQDiSOCIAiCIAgGEkcEQRAEQRAMJI4IYjvBsizccMMNTT0MX3r37o0JEyY09TDyhgkTJqB3797cMtl3+dVXX2HEiBFo2bIlLMvC7NmzAQDvvPMO9txzTxQXF8OyLGzevLlRxq1i9OjRGD16tPt+2rRpsCwLL7/8sna7yZMnw7IsLFmyJLcDJIgIIHFEEDlm/vz5OOmkk7DTTjuhqKgI3bp1w0knnYTvvvuuqYdGZEFFRQVuvPFGDBkyBK1atUJJSQl23313/PnPf8bKlSsD9VVXV4fjjjsOGzduxD333IOnn34avXr1woYNG3D88cejpKQEDzzwAJ5++mm0bNnSs/2LL74Iy7Lw2muvedYNGTIElmVh6tSpnnU9e/bEiBEjAo2VIJoDiaYeAEHsyLz66qs44YQT0K5dO5x++uno06cPlixZgsceewwvv/wyXnjhBRx11FFNPcxIWbhwIWKxHfu56+eff8bYsWOxbNkyHHfccTjrrLNQWFiIuXPn4rHHHsNrr72GH374Qbl9VVUVEonM5fenn37C0qVL8a9//QtnnHGGu/ydd95BZWUl/vrXv2Ls2LHK/g444AAAwPTp03HMMce4yysqKjBv3jwkEgl8+umnGDNmjLtu+fLlWL58OX7/+9+HOgZBOfnkk/H73/8eRUVFjbI/gsgGEkcEkSN++uknnHzyyejbty8+/vhjdOzY0V130UUXYdSoUTjppJMwd+5c9OnTpwlHqqa+vh6pVAqFhYXG2+zoN7/6+nr89re/xZo1azBt2jRXmDjccsst+Nvf/qbto7i4mHu/du1aAECbNm2Mlot069YNffr0wfTp07nlM2bMgG3bOO644zzrnPfi+HNFPB5HPB5vlH0RRLbs2I93BNGE3HHHHdi2bRseeeQRThgBQIcOHfDwww9jy5YtuOOOO0LvY8WKFTjttNPQuXNnFBUVYdCgQXj88ce5NrW1tZg4cSKGDh2KsrIytGzZEqNGjfK4WZYsWQLLsnDnnXfi73//O3beeWcUFRXhu+++ww033ADLsrBo0SJMmDABbdq0QVlZGU499VRs27aN60eMOXJiTT799FNceuml6NixI1q2bIljjjkG69at47ZNpVK44YYb0K1bN7Ro0QJjxozBd999ZxzHtHXrVlx22WXo0aMHioqK0L9/f9x5552wbZtrZ1kWLrjgAvznP//B7rvv7h67d955x3cfr7zyCubMmYNrr71WKixKS0txyy23aPtgY44mTJiAgw46CABw3HHHwbIsN67nlFNOAQDsu+++sCxLewwOOOAAzJo1C1VVVe6yTz/9FIMGDcJhhx2Gzz//HKlUiltnWRZGjhwJAHjiiSdw8MEHo1OnTigqKsLAgQPx4IMP+h4PGTU1NfjNb36DsrIyfPbZZwDkMUe9e/fGb37zG0yfPh377bcfiouL0bdvXzz11FOePufOnYuDDjoIJSUl6N69O26++WY88cQTFMdE5ASyHBFEjnjjjTfQu3dvjBo1Srr+wAMPRO/evfHGG2/gn//8Z+D+16xZg/3339+90Xfs2BFvv/02Tj/9dFRUVODiiy8GkHatPProozjhhBNw5plnorKyEo899hjGjx+PL7/8EnvuuSfX7xNPPIHq6mqcddZZKCoqQrt27dx1xx9/PPr06YNJkyZh5syZePTRR9GpUydfSwkA/OlPf0Lbtm1x/fXXY8mSJfj73/+OCy64AC+88ILb5uqrr8btt9+OI444AuPHj8ecOXMwfvx4VFdX+/Zv2zaOPPJITJ06Faeffjr23HNPvPvuu7jiiiuwYsUK3HPPPVz76dOn49VXX8V5552H1q1b47777sOxxx6LZcuWoX379sr9vP766wDSbqIoOPvss7HTTjvh1ltvxYUXXoh9990XnTt3BgD0798fjzzyCG666Sb06dMHO++8s7KfAw44AE8//TS++OILN2D6008/xYgRIzBixAiUl5dj3rx5GDx4sLtuwIAB7md98MEHMWjQIBx55JFIJBJ44403cN555yGVSuH88883/jxVVVU46qij8PXXX+P999/Hvvvuq22/aNEi/O53v8Ppp5+OU045BY8//jgmTJiAoUOHYtCgQQDSDwFjxoyBZVm4+uqr0bJlSzz66KM7vJWSaEJsgiAiZ/PmzTYA+6ijjtK2O/LII20AdkVFhW+fAOzrr7/efX/66afbXbt2tdevX8+1+/3vf2+XlZXZ27Zts23btuvr6+2amhquzaZNm+zOnTvbp512mrts8eLFNgC7tLTUXrt2Ldf++uuvtwFw7W3bto855hi7ffv23LJevXrZp5xyivv+iSeesAHYY8eOtVOplLv8kksusePxuL1582bbtm179erVdiKRsI8++miuvxtuuMEGwPUp4z//+Y8NwL755pu55b/73e9sy7LsRYsWucsA2IWFhdyyOXPm2ADs+++/X7ufvfbayy4rK9O2YTnllFPsXr16ccvE73Lq1Kk2APull17i2jnH7quvvvLdz/z5820A9l//+lfbtm27rq7Obtmypf3kk0/atm3bnTt3th944AHbtm27oqLCjsfj9plnnulu75wvLOPHj7f79u3LLTvooIPsgw46SDr2yspK+6CDDrI7dOhgz5o1S/pZFi9e7C7r1auXDcD++OOP3WVr1661i4qK7Msuu8xd9qc//cm2LIvrc8OGDXa7du08fRJEFJBbjSByQGVlJQCgdevW2nbOeqe9KbZt45VXXsERRxwB27axfv1699/48eNRXl6OmTNnAkjHejgxQ6lUChs3bkR9fT322Wcftw3Lscce63EDOpxzzjnc+1GjRmHDhg2oqKjwHfNZZ50Fy7K4bZPJJJYuXQoA+OCDD1BfX4/zzjuP2+5Pf/qTb98A8NZbbyEej+PCCy/kll922WWwbRtvv/02t3zs2LGcJWbw4MEoLS3Fzz//rN1PRUWF7/faFOy2225o3769G0s0Z84cbN261c1GGzFiBD799FMA6VikZDLJuQVLSkrc1+Xl5Vi/fj0OOugg/PzzzygvL/fdf3l5OcaNG4cFCxZg2rRpHoukioEDB3LW1Y4dO6J///7c9/DOO+9g+PDhXJ/t2rXDiSeeaLQPgggKudUIIgeYip7KykpYloUOHToAADZu3Ija2lp3fUlJCcrKyjzbrVu3Dps3b8YjjzyCRx55RNq3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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Q-learning算法最终收敛得到的策略为：\n",
      "^ooo ovoo ovoo ^ooo ^ooo ovoo ooo> ^ooo ^ooo ooo> ooo> ovoo \n",
      "ooo> ooo> ooo> ooo> ooo> ooo> ^ooo ooo> ooo> ooo> ooo> ovoo \n",
      "ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ovoo \n",
      "^ooo **** **** **** **** **** **** **** **** **** **** EEEE \n"
     ]
    }
   ],
   "source": [
    "class QLearning:\n",
    "    \"\"\" Q-learning算法 \"\"\"\n",
    "    def __init__(self, ncol, nrow, epsilon, alpha, gamma, n_action=4):\n",
    "        self.Q_table = np.zeros([nrow * ncol, n_action])  # 初始化Q(s,a)表格\n",
    "        self.n_action = n_action  # 动作个数\n",
    "        self.alpha = alpha  # 学习率\n",
    "        self.gamma = gamma  # 折扣因子\n",
    "        self.epsilon = epsilon  # epsilon-贪婪策略中的参数\n",
    "\n",
    "        ## 获取当前采取的行动，采取了ε-贪婪策略\n",
    "    def take_action(self, state):  # 选取下一步的操作,具体实现为epsilon-贪婪\n",
    "        if np.random.random() < self.epsilon:           ##  随机选择一个动作\n",
    "            action = np.random.randint(self.n_action)\n",
    "        else:\n",
    "            action = np.argmax(self.Q_table[state])     ##  拿到动作价值最大的动作\n",
    "        return action\n",
    "\n",
    "    ## 拿到每个状态最优的动作，最优动作标记1，其他的动作标记0\n",
    "    def best_action(self, state):  # 用于打印策略\n",
    "        Q_max = np.max(self.Q_table[state])\n",
    "        a = [0 for _ in range(self.n_action)]\n",
    "        for i in range(self.n_action):\n",
    "            if self.Q_table[state, i] == Q_max:\n",
    "                a[i] = 1\n",
    "        return a\n",
    "\n",
    "    '''\n",
    "    增量更新动作价值函数，对应相应的Q-learning公式\n",
    "    和sarsa algorithm不同的地方就是，这使用了状态内所有动作的最大值，但是sarsa直接使用了(s, a)状态动作对的值\n",
    "    sarsa的公式就是：\n",
    "    def update(self, s0, a0, r, s1, a1):\n",
    "        td_error = r + self.gamma * self.Q_table[s1, a1] - self.Q_table[s0, a0]    ## 算时序差分的\n",
    "        self.Q_table[s0, a0] += self.alpha * td_error      ##  更新动作价值函数\n",
    "    '''\n",
    "    def update(self, s0, a0, r, s1):\n",
    "        td_error = r + self.gamma * self.Q_table[s1].max() - self.Q_table[s0, a0]\n",
    "        self.Q_table[s0, a0] += self.alpha * td_error\n",
    "\n",
    "\n",
    "np.random.seed(0)\n",
    "epsilon = 0.1\n",
    "alpha = 0.1\n",
    "gamma = 0.9\n",
    "agent = QLearning(ncol, nrow, epsilon, alpha, gamma)\n",
    "num_episodes = 500  # 智能体在环境中运行的序列的数量\n",
    "\n",
    "return_list = []  # 记录每一条序列的回报\n",
    "for i in range(10):  # 显示10个进度条\n",
    "    # tqdm的进度条功能\n",
    "    with tqdm(total=int(num_episodes / 10), desc='Iteration %d' % i) as pbar:\n",
    "        for i_episode in range(int(num_episodes / 10)):  # 每个进度条的序列数\n",
    "            episode_return = 0\n",
    "            state = env.reset()\n",
    "            done = False\n",
    "            while not done:\n",
    "                action = agent.take_action(state)\n",
    "                next_state, reward, done = env.step(action)\n",
    "                episode_return += reward  # 这里回报的计算不进行折扣因子衰减\n",
    "                agent.update(state, action, reward, next_state)\n",
    "                state = next_state\n",
    "            return_list.append(episode_return)\n",
    "            if (i_episode + 1) % 10 == 0:  # 每10条序列打印一下这10条序列的平均回报\n",
    "                pbar.set_postfix({\n",
    "                    'episode':\n",
    "                    '%d' % (num_episodes / 10 * i + i_episode + 1),\n",
    "                    'return':\n",
    "                    '%.3f' % np.mean(return_list[-10:])\n",
    "                })\n",
    "            pbar.update(1)\n",
    "\n",
    "episodes_list = list(range(len(return_list)))\n",
    "plt.plot(episodes_list, return_list)\n",
    "plt.xlabel('Episodes')\n",
    "plt.ylabel('Returns')\n",
    "plt.title('Q-learning on {}'.format('Cliff Walking'))\n",
    "plt.show()\n",
    "\n",
    "action_meaning = ['^', 'v', '<', '>']\n",
    "print('Q-learning算法最终收敛得到的策略为：')\n",
    "print_agent(agent, env, action_meaning, list(range(37, 47)), [47])\n",
    "\n",
    "# Iteration 0: 100%|██████████| 50/50 [00:00<00:00, 1183.69it/s, episode=50,\n",
    "# return=-105.700]\n",
    "# Iteration 1: 100%|██████████| 50/50 [00:00<00:00, 1358.13it/s, episode=100,\n",
    "# return=-70.900]\n",
    "# Iteration 2: 100%|██████████| 50/50 [00:00<00:00, 1433.72it/s, episode=150,\n",
    "# return=-56.500]\n",
    "# Iteration 3: 100%|██████████| 50/50 [00:00<00:00, 2607.78it/s, episode=200,\n",
    "# return=-46.500]\n",
    "# Iteration 4: 100%|██████████| 50/50 [00:00<00:00, 3007.19it/s, episode=250,\n",
    "# return=-40.800]\n",
    "# Iteration 5: 100%|██████████| 50/50 [00:00<00:00, 2005.77it/s, episode=300,\n",
    "# return=-20.400]\n",
    "# Iteration 6: 100%|██████████| 50/50 [00:00<00:00, 2072.14it/s, episode=350,\n",
    "# return=-45.700]\n",
    "# Iteration 7: 100%|██████████| 50/50 [00:00<00:00, 4244.04it/s, episode=400,\n",
    "# return=-32.800]\n",
    "# Iteration 8: 100%|██████████| 50/50 [00:00<00:00, 4670.82it/s, episode=450,\n",
    "# return=-22.700]\n",
    "# Iteration 9: 100%|██████████| 50/50 [00:00<00:00, 4705.19it/s, episode=500,\n",
    "# return=-61.700]\n",
    "\n",
    "# Q-learning算法最终收敛得到的策略为：\n",
    "# ^ooo ovoo ovoo ^ooo ^ooo ovoo ooo> ^ooo ^ooo ooo> ooo> ovoo\n",
    "# ooo> ooo> ooo> ooo> ooo> ooo> ^ooo ooo> ooo> ooo> ooo> ovoo\n",
    "# ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ooo> ovoo\n",
    "# ^ooo **** **** **** **** **** **** **** **** **** **** EEEE"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "colab": {
   "collapsed_sections": [],
   "name": "第5章-时序差分算法.ipynb",
   "provenance": []
  },
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
